作者smlboby (波比)
看板Database
標題Re: [SQL ] 新手請益語法的差異性
時間Mon Mar 24 10:02:31 2014
※ 引述《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語法是什麼意思呢?? 這段是擷取書籍上的語法,書籍無特別說明
: 所以無從得知要做什麼用途~"~
: 新手求解語法問題!! 感謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.68.117.29
※ 編輯: smlboby 來自: 219.68.117.29 (03/24 10:05)
推 APE36:那他 insert into 那行結束後不用 ;? 可以直接一行結束寫完? 03/24 14:25
→ APE36:我是不太了解第三行跟第二行 之間的關係,我所討論問題是(2 03/24 14:26
→ APE36:感謝回復新手的問題!! 03/24 14:29
→ smlboby:第2~4行是一個語法,第2行是目的地,第3~4行是資料來源 03/24 15:44
推 LPH66:回 1F 推文, 應該說是用 ; 來表示一行指令結束 03/24 17:32
→ LPH66:如果沒有 ; 則就一路串到結束這樣 03/24 17:32
推 MacPerson:沒記錯的話,地2個查詢會有Full Table Scan的問題 03/24 18:21
→ MacPerson:說錯 是第一個 03/24 18:21