SQL Server 資料庫實用SQL語句

2022-09-24 23:00:12 字數 2676 閱讀 6797

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

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.id--檢視資料庫資訊

select * from sys.databases where name='master'

1.按姓氏筆畫排序:

select * from tablename order by customername collate chinese_prc_stroke_ci_as

2.分頁sql語句

select * from(select (row_number() over (order by tab.id desc)) as rownum,tab.* from 表名 as tab) as t where rownum between 起始位置 and 結束位置

3.獲取當前資料庫中的所有使用者表

select * from sysobjects where xtype='u' and category=0

4.獲取某乙個表的所有字段

select name from syscolumnswww.cppcns.com where id=object_id('表名')

5.檢視與某乙個表相關的檢視、儲存過程、函式

select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%'

6.檢視當前資料庫中所有儲存過程

select name as 儲存過程名稱 from sysobjects where xtype='p'

7.查詢使用者建立的所有資料庫

select * from master..sysdatabases d where sid not in(select sid from master..syslogins where name='sa')

或者 select dbid, name as db_name from master..sysdatabases where sid <> 0x01

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 運算子通過組合其他兩個結果表(例如 t程式設計客棧able1 和 table2)並消去表中任何重複行而派生出乙個結果表。當 all 隨 union 一起使用時(即 union all),不消除重複行。兩種情況下,派生表的每一行不是來自 table1 就是來自 table2。

b: except 運算子

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

c: intersect 運tdflo算符

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

本文標題: sql server 資料庫實用sql語句

本文位址: /shujuku/mssql/90231.html

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...