Re: [SQL ] 新手請益語法的差異性

作者: smlboby (波比)   2014-03-24 10:02:31
※ 引述《APE36 (PT鄉民)》之銘言:
: (針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行)
: 資料庫名稱:SQL
: 資料庫版本:unknow
: 內容/問題描述:
: 想了解一下
: 最近接觸的SQL語法的問題
: (1)
% 代表萬用字元(不限數量的任何字元)
_ 代表單一萬用字元(1個任何字元)
: select * from book where name LIKE '%543%';
上述語法是查出 name 這個欄位有包含 543 子字串的資料
以下列資料為例,會被查出的為(v)
name
135432 (v)
54379 (v)
98543 (v)
542223
: 與
: select * from book where name LIKE '_2%';
上述語法是查出 name 這個欄位第2個字元為 2 的資料
以下列資料為例,會被查出的為(v)
name
1234 (v)
245
12342 (v)
: 這兩段SQL語法差別在哪呢??
: 不求甚解@@
: (2)
: create table 專案 p1 (員工編號 char(4) primary key);
: insert into 專案 p1
: select 員工編號 from 員工專案
: where 專案編號 ='p1';
上述第一行是在資料庫中建立一個叫做 專案 的table
內含一個名為 員工編號 的欄位(且為PKey)
上述第二行是在新增資料進入剛建立的 專案 table
資料來源為 員工專案 table中, 專案編號 欄位等於 p1 的所有資料
: 請益一下這段SQL語法是什麼意思呢?? 這段是擷取書籍上的語法,書籍無特別說明
: 所以無從得知要做什麼用途~"~
: 新手求解語法問題!! 感謝!!
作者: APE36 (PT鄉民)   2014-03-24 14:25:00
那他 insert into 那行結束後不用 ;? 可以直接一行結束寫完?我是不太了解第三行跟第二行 之間的關係,我所討論問題是(2感謝回復新手的問題!!
作者: smlboby (波比)   2014-03-24 15:44:00
第2~4行是一個語法,第2行是目的地,第3~4行是資料來源
作者: LPH66 (-6.2598534e+18f)   2014-03-24 17:32:00
回 1F 推文, 應該說是用 ; 來表示一行指令結束如果沒有 ; 則就一路串到結束這樣
作者: MacPerson (Gary)   2014-03-24 18:21:00
沒記錯的話,地2個查詢會有Full Table Scan的問題說錯 是第一個

Links booklink

Contact Us: admin [ a t ] ucptt.com