1、說(shuō)明:復(fù)制表(只復(fù)制結(jié)構(gòu),源表名:a?新表名:b)?(access可用)
法一:select *?into?b?from?a?where?11(僅用于sqlserver)
法二:select?top?0?*?into?b?from?a
2、說(shuō)明:拷貝表(拷貝數(shù)據(jù),源表名:a?目標(biāo)表名:b)?(access可用)
insert?into?b(a,?b,?c)?select?d,e,f?from?b;
3、說(shuō)明:跨數(shù)據(jù)庫(kù)之間表的拷貝(具體數(shù)據(jù)使用絕對(duì)路徑)?(access可用)
insert?into?b(a,?b,?c)?select?d,e,f?from?b?in?‘具體數(shù)據(jù)庫(kù)’?where?條件
例子:..from?b?in?‘”&server.mappath(“.”)&”data.mdb”?&”‘?where..
4、說(shuō)明:子查詢(表名1:a?表名2:b)
select?a,b,c?from?a?where?a?in?(select?d?from?b?)?或者:?select?a,b,c?from?a?where?a?in?(1,2,3)
5、說(shuō)明:顯示文章、提交人和最后回復(fù)時(shí)間
select?a.title,a.username,b.adddate?from?table?a,(select?max(adddate)?adddate?from?table?where?table.title=a.title)?b
6、說(shuō)明:外連接查詢(表名1:a?表名2:b)
select?a.a,?a.b,?a.c,?b.c,?b.d,?b.f?from?a?left?out?join?b?on?a.a?=?b.c
7、說(shuō)明:在線視圖查詢(表名1:a?)
select?*?from?(select?a,b,c?from?a)?t?where?t.a?>?1;
8、說(shuō)明:between的用法,between限制查詢數(shù)據(jù)范圍時(shí)包括了邊界值,not?between不包括
select?*?from?table1?where?time?between?time1?and?time2
select?a,b,c,?from?table1?where?a?not?between?數(shù)值1?and?數(shù)值2
9、說(shuō)明:in?的使用方法
select?*?from?table1?where?a?[not]?in?(‘值1’,’值2’,’值4’,’值6’)
10、說(shuō)明:兩張關(guān)聯(lián)表,刪除主表中已經(jīng)在副表中沒(méi)有的信息
delete?from?table1?where?not?exists?(?select?*?from?table2?where?table1.field1=table2.field1?)
11、說(shuō)明:四表聯(lián)查問(wèn)題:
select?*?from?a?left?inner?join?b?on?a.a=b.b?right?inner?join?c?on?a.a=c.c?inner?join?d?on?a.a=d.d?where?…..
12、說(shuō)明:日程安排提前五分鐘提醒
sql:?select?*?from?日程安排?where?datediff(‘minute’,f開始時(shí)間,getdate())>5
13、說(shuō)明:一條sql?語(yǔ)句搞定數(shù)據(jù)庫(kù)分頁(yè)
select?top?10?b.*?from?(select?top?20?主鍵字段,排序字段?from?表名?order?by?排序字段?desc)?a,表名?b?where?b.主鍵字段?=?a.主鍵字段?order?by?a.排序字段
具體實(shí)現(xiàn):
關(guān)于數(shù)據(jù)庫(kù)分頁(yè):
declare?@start?int,@end?int
@sql??nvarchar(600)
set?@sql=’select?top’+str(@end-@start+1)+’+from?t?where?rid?not?in(select?top’+str(@str-1)+’rid?from?t?where?rid>-1)’
exec?sp_executesql?@sql
注意:在top后不能直接跟一個(gè)變量,所以在實(shí)際應(yīng)用中只有這樣的進(jìn)行特殊的處理。rid為一個(gè)標(biāo)識(shí)列,如果top后還有具體的字段,這樣做是非常有好處的。因?yàn)檫@樣可以避免top的字段如果是邏輯索引的,查詢的結(jié)果后實(shí)際表中的不一致(邏輯索引中的數(shù)據(jù)有可能和數(shù)據(jù)表中的不一致,而查詢時(shí)如果處在索引則首先查詢索引)
14、說(shuō)明:前10條記錄
select?top?10?*?form?table1?where?范圍
15、說(shuō)明:選擇在每一組b值相同的數(shù)據(jù)中對(duì)應(yīng)的a最大的記錄的所有信息(類似這樣的用法可以用于論壇每月排行榜,每月熱銷產(chǎn)品分析,按科目成績(jī)排名,等等.)
select?a,b,c?from?tablename?ta?where?a=(select?max(a)?from?tablename?tb?where?tb.b=ta.b)
16、說(shuō)明:包括所有在?tablea?中但不在?tableb和tablec?中的行并消除所有重復(fù)行而派生出一個(gè)結(jié)果表
(select?a?from?tablea?)?except?(select?a?from?tableb)?except?(select?a?from?tablec)
17、說(shuō)明:隨機(jī)取出10條數(shù)據(jù)
select?top?10?*?from?tablename?order?by?newid()
18、說(shuō)明:隨機(jī)選擇記錄
select?newid()
19、說(shuō)明:刪除重復(fù)記錄
1),delete?from?tablename?where?id?not?in?(select?max(id)?from?tablename?group?by?col1,col2,…)
2),select?distinct?*?into?temp?from?tablename
delete?from?tablename
insert?into?tablename?select?*?from?temp
評(píng)價(jià):?這種操作牽連大量的數(shù)據(jù)的移動(dòng),這種做法不適合大容量但數(shù)據(jù)操作
3),例如:在一個(gè)外部表中導(dǎo)入數(shù)據(jù),由于某些原因第一次只導(dǎo)入了一部分,但很難判斷具體位置,這樣只有在下一次全部導(dǎo)入,這樣也就產(chǎn)生好多重復(fù)的字段,怎樣刪除重復(fù)字段
alter?table?tablename
–添加一個(gè)自增列
add??column_bint?identity(1,1)
delete?from?tablenamewhere?column_b?not?in(
select?max(column_b)??from?tablename?group?by?column1,column2,…)
alter?table?tablename?drop?column?column_b
20、說(shuō)明:列出數(shù)據(jù)庫(kù)里所有的表名
select?name?from?sysobjects?where?type=’u’?//?u代表用戶
21、說(shuō)明:列出表里的所有的列名
select?name?from?syscolumns?where?id=object_id(‘tablename’)
22、說(shuō)明:列示type、vender、pcs字段,以type字段排列,case可以方便地實(shí)現(xiàn)多重選擇,類似select?中的case。
select?type,sum(case?vender?when?‘a’?then?pcs?else?0?end),sum(case?vender?when?‘c’?then?pcs?else?0?end),sum(case?vender?when?‘b’?then?pcs?else?0?end)?from?tablename?group?by?type
顯示結(jié)果:
type?vender?pcs
電腦a?1
電腦a?1
光盤b?2
光盤a?2
手機(jī)b?3
手機(jī)?c?3
23、說(shuō)明:初始化表table1
truncate?table?table1
24、說(shuō)明:選擇從10到15的記錄
select?top?5?*?from?(select?top?15?*?from?table?order?by?id?asc)?table_別名?order?by?id?desc
?以上就是mysql經(jīng)典語(yǔ)句大全——提升篇的內(nèi)容,更多相關(guān)內(nèi)容請(qǐng)關(guān)注PHP中文網(wǎng)(www.php.cn)!?