2),select distinct * into temp from tablename
delete from tablename
insert into tablename select * from temp
評價: 這種操作牽連大量的資料的移動,這種做法不適合大容量但資料操作
3),例如:在乙個外部表中匯入資料,由於某些原因第一次只匯入了一部分,但很難判斷具體位置,這樣只有在下一次全部匯入,這樣也就產生好多重複的字段,怎樣刪除重複字段
alter table tablename
--新增乙個自增列
add column_b int identity(1,1)
delete from tablename where column_b not in(
select max(column_b) from tablename group by column1,column2,...)
alter table tablename drop column column_b
20、說明:列出資料庫裡所有的表名
select name from sysobjects where type='u' // u代表使用者
21、說明:列出表裡的所有的列名
select name from syscolumns where id=object_id('tablename')
22、說明:列示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
23、說明:初始化表table1
truncate table table1
24、說明:選擇從10到15的記錄
select top 5 * from (select top 15 * from table order by id asc) table_別名 order by id desc
sql常用語句
use myoa select from delete from department where departmentid 1 insert department departmentid,departmentname values 1,技術部 update department set depa...
sql常用語句
在sqlserver,簡單的組合sp spaceused和sp msforeachtable這兩個儲存過程,可以方便的統計出使用者 資料表的大小,包括記錄總數和空間占用情況,非常實用,在sqlserver2k和sqlserver2005中都測試通過。1.exec sp spaceused 表名 sq...
sql常用語句
第一種 行列互換思想,外層group by,使用case when then 我有乙個表,有兩個字段 收費專案 唯一值 收費金額。我想用sql按收費專案不同生成不同的字段,對應值是金額。如 房租 100 水電費 50 雜費 50 生成後的格式是 房租 水電費 雜費 100 50 50 請問,如何寫這...