SQL語句收集精華

2021-06-15 21:01:03 字數 2139 閱讀 6010

[1]----select count(*)

from syscolumns

where object_name(id)='teacher_archives'

[2]----select count(*)

from information_schema.columns

where table_name=''

[3]----select column_name,data_type,character_maximum_length

from information_schema.columns

where table_name='teacher_archives'

[4]----select * from information_schema.columns

where table_name='teacher_archives'

[5]----exec master..xp_cmdshell 'command'

[6]----dbcc checkident(assess_vindicate,reseed,1000)

選擇第n條記錄

select 30th

select top 1 * from table1 where col1 not in (select top 29 col1 from table1)

語句中判斷之後再給出新值 & 型別轉換convert的使用

[8]----select assess_name,total_mark,

assess_code=case assess_code

when 0 then '出勤考核'

else convert(char(4), assess_code) end

from assess_vindicate

如果要判斷是否是null,則case後面不跟列名,在when後面跟,如:

update t_user_info set permission=case when permission is null then @permission else

permission+@permission

end where

username=@username

擷取部分

substring(record_content,1,500) as record_content

選取b表中沒有而a表中有的資料

select * from t_teacher where not exists(select * from t_course where t_teacher.teacherid=teacherid)

優於select * from t_teacher where teacherid not in (select teacherid from t_course)

隨機選取1條資料

select top 1 * from tb1 order by newid()

既顯示資料庫中的資料,又能按類別對資料進行分類統計

在group by後面使用with rollup語句,統計資料中的不確定項會顯示為null,可以用case when ...替換成類別名稱

rollup只返回第乙個分組條件的統計行,而cube返回所有

select top

select top 10 * from t_table,如果後面有order by sth,那麼如果sth有重複的,就會都列出來

top10可能就變成20或者更多,要解決這個問題,可以在sth後面跟乙個主鍵之類的,使orderby沒有重複

從乙個表選出資料插入另外乙個表

insert into 表1(col1,...)

select col1...  from 表2  where 條件..

替換null

isnull(欄位名, '替換值')

獲取text欄位的長度

datalength(欄位名)

在text裡面查詢內容

patindex('值',欄位名)>0 

[9]----匯出資料到excel中

exec master..xp_cmdshell

'bcp 資料庫名..表名

out c:/out.xls -c -q -s "ly_czx"

-u "sa" -p "czx"'

SQL語句收集

use tablename 要操作的資料庫名 select logicalfilename tablename log 日誌檔名 maxminutes 10,limit on time allowed to wrap log.newsize 1 你想設定的日誌檔案的大小 m setup initia...

SQL查詢語句SELECT精華

一 簡單查詢 簡單的transact sql查詢只包括選擇列表 from子句和where子句。它們分別說明所查詢列 查詢的 表或檢視 以及搜尋條件等。例如,下面的語句查詢testtable表中姓名為 張三 的nickname欄位和email欄位。select nickname,email from ...

精妙SQL語句收集

星期五 2007年08月17日 精妙sql語句收集 use tablename 要操作的資料庫名 select logicalfilename tablename log 日誌檔名 maxminutes 10,limit on time allowed to wrap log.newsize 1 你...