1、說明:複製表(只複製結構,源表名:a 新錶名:b) (access可用)
法一:select * into b from a where 1<>1
法二:select top 0 * into b from a
2、說明:拷貝表(拷貝資料,源表名:a 目標表名:b) (access可用)
insert into b(a, b, c) select d,e,f from b;
3、說明:跨資料庫之間表的拷貝(具體資料使用絕對路徑) (access可用)
insert into b(a, b, c) select d,e,f from b in 『具體資料庫』 where 條件
select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
5、說明:兩張關聯表,刪除主表中已經在副表中沒有的資訊
delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )
6、說明:四表聯查問題:
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 .....
sql: select * from 日程安排 where datediff('minute',f開始時間,getdate())>5
8、說明:選擇在每一組b值相同的資料中對應的a最大的記錄的所有資訊(類似這樣的用法可以用於論壇每月排行榜,每月熱銷產品分析,按科目成績排名,等等.)
select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)
9、說明:包括所有在 tablea 中但不在 tableb和tablec 中的行並消除所有重複行而派生出乙個結果表
(select a from tablea ) except (select a from tableb) except (select a from tablec)
10、說明:隨機取出10條資料
select top 10 * from tablename order by newid()
11、說明:隨機選擇記錄
select newid()
12、說明:刪除重覆記錄???
delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)
13、說明:列出資料庫裡所有的表名
select name from sysobjects where type='u'
[color=red]14、說明:列示type、vender、pcs欄位,以type欄位排列,case可以方便地實現多重選擇,類似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
顯示結果:
type vender pcs
電腦 a 1
電腦 a 1
光碟 b 2
光碟 a 2
手機 b 3
手機 c 3[/color]
15、說明:初始化表table1
truncate table table1
truncate table 在功能上與不帶 where 子句的 delete 語句相同:二者均刪除表中的全部行。但 truncate table 比 delete 速度快,且使用的系統和事務日誌資源少。
delete 語句每次刪除一行,並在事務日誌中為所刪除的每行記錄一項。truncate table 通過釋放儲存表資料所用的資料頁來刪除資料,並且只在事務日誌中記錄頁的釋放。
truncate table 刪除表中的所有行,但表結構及其列、約束、索引等保持不變。新行標識所用的計數值重置為該列的種子。如果想保留標識計數值,請改用 delete。如果要刪除表定義及其資料,請使用 drop table 語句。
如果有rollback語句,delete操作將被撤銷,但truncate不會撤銷。
我蒐集的一些精妙的SQL語句 整理更新
下面是我蒐集的一些精妙的sql語句 說明 複製表 只複製結構,源表名 a 新錶名 b select into b from a where 1 1說明 拷貝表 拷貝資料,源表名 a 目標表名 b insert into b a,b,c select d,e,f from b select a.tit...
一些比較精妙的巨集定義
今天在網上突然發現了下面幾個關於c 中的巨集定義的說明,回想下,好像在系統的 中也見過這些零散的定義,但沒有注意,看到別人總結了下,發現果然很有用,雖然不知有的道可用與否,但也不失為一種手段,所以就先把它摘抄下來,增加一點見識 1,防止乙個標頭檔案被重複包含 ifndef bodydef h def...
一些經典的SQL
表結構 部門deptid,父級部門parentdeptid,資料庫的每一條記錄都記錄了自身id和父級部門id,現在要從某個部門查詢其下屬部門生成一棵部門關係樹,sql如下 select so.orgid,so.parentdeptid,so.orgname from sys orginfo so s...