SQL SERVER 資料庫實用SQL語句

2022-07-29 19:09:11 字數 1645 閱讀 7977

--檢視指定表的外來鍵約束

select * from sysobjects where parent_obj in(

select id from sysobjects where name='表名')

and xtype='pk'

--檢視所有表

select * from sysobjects where xtype='pk'

--刪除列中含數字的

delete news where patindex('%[0-9]%',title)>0

--刪除刪去 字段 title值重複的行,且只保留 id 較小的這個

delete news where exists(select 1 from news t where t.title=news.title and t.id0x01

8.查詢某乙個表的字段和資料型別

select column_name,data_type from information_schema.columns

where table_name = '表名'

9.使用事務

在使用一些對資料庫表的臨時的sql語句操作時,可以採用sql server事務處理,防止對資料操作後發現誤操作問題

開始事務

begin tran

insert into tablename values(…)

sql語句操作不正常,則回滾事務。

回滾事務

rollback tran

sql語句操作正常,則提交事務,資料提交至資料庫。

提交事務

commit tran

10. 按全文匹配方式查詢

欄位名 like n'%[^a-za-z0-9]china[^a-za-z0-9]%'

or 欄位名 like n'%[^a-za-z0-9]china'

or 欄位名 like n'china[^a-za-z0-9]%'

or 欄位名 like n'china

11.計算執行sql語句查詢時間

declare @d datetime

set @d=getdate()

select * from sys_columnproperties select [語句執行花費時間(毫秒)]=datediff(ms,@d,getdate())

12、說明:幾個高階查詢運算詞

a: union 運算子

union 運算子通過組合其他兩個結果表(例如 table1 和 table2)並消去表中任何重複行而派生出乙個結果表。當 all 隨 union 一起使用時(即 union all),不消除重複行。兩種情況下,派生表的每一行不是來自 table1 就是來自 table2。

b: except 運算子

except 運算子通過包括所有在 table1 中但不在 table2 中的行並消除所有重複行而派生出乙個結果表。當 all 隨 except 一起使用時 (except all),不消除重複行。

c: intersect 運算子

intersect 運算子通過只包括 table1 和 table2 中都有的行並消除所有重複行而派生出乙個結果表。當 all 隨 intersect 一起使用時 (intersect all),不消除重複行。

SQL SERVER 資料庫實用SQL語句

sql server 資料庫實用sql語句 1.按姓氏筆畫排序 select from tablename order by customername collate chinese prc stroke ci as 2.分頁sql語句 select from select row number o...

SQL SERVER 資料庫實用SQL語句

sql server 資料庫實用sql語句 1.按姓氏筆畫排序 select from tablename order bycustomername collate chinese prc stroke ci as 2.分頁sql語句 select from select row number ov...

SQL Server 資料庫實用SQL語句

檢視指定表的外來鍵約束 select from sysobjects where parent obj in select id from sysobjects where name 表名 and xtype pk 檢視所有表 select from sysobjects where xtype p...