當前位置:
首頁 > 知識 > 收集一些工作中常用的經典SQL語句

收集一些工作中常用的經典SQL語句

作為一枚程序員來說和資料庫打交道是不可避免的,現收集一下工作中常用的SQL語句,希望能給大家帶來一些幫助,當然不全面,歡迎補充!

1、執行插入語句,獲取自動生成的遞增的ID值

INSERT INTO SysRole (RoleName,RoleDesc) VALUES("超級管理員","描述")

SELECT @@identity as "id"

2、在同一數據表找到相同屬性的記錄

SELECT RoleName FROM SysRole GROUP BY RoleName HAVING COUNT(ID)>1

3、隨機提取記錄

SELECT RoleName FROM SysRole ORDER BY NEWID

4、按照姓氏筆畫排序

SELECT RoleName FROM SysRole ORDER BY RoleName COLLATE Chinese_PRC_Stroke_CI_AS

5、獲取某個日期所在月份的最大天數

SELECT DAY(DATEADD(dd,-DAY("2017-5-12"),DATEADD(mm,1,"2017-5-12"))) as "DayNumber"

6、實現用0或1 來顯式 男或女

select name ,Sex=

case Sex

when "0" then "男"

when "1" then "女"

end

from Sys_user

7、顯式文章、提交人和最後回復時間

select a.title,a.username,b.adddate

from tablename as a ,select(max(adddate)) from tablename

where tablename.title=a.title) b

8、嵌套子查詢

select a,b,c from table1 where a in(select a from table2)

9、複製表結構(源表名:a ,目標表名:b)

select * into from a where 1<>1

或者

select top 0 * into [b] from [a]

10、複製表數據(源表名:a ,目標表名:b)

insert into b(name,desc,createtime) as select name,desc,createtime from table1 as a

11、通配符的使用

select * from table1 where name like "A-L%"

--篩選name列首字母在A~L之間的記錄

select * from table1 where name like"[ABCD]%"

--篩選name列首字母是 A、B、C或D的記錄

select * from table1 where name like "[A-DH]%"

--篩選name列首字母在A~D或者是H的記錄

select * from table1 where name like "[^D]%"

--篩選name列首字母不是D的記錄

select * from table1 where name like "Xiao_ming"

-- _ 匹配任意單個字元

12、操作列

alter table table1 add desc nvarchar(2000) not null default "" --新增一列

alter table table1 alter column desc nvarchar(500) --修改列

alter table table1 drop colmn desc --刪除列

13、存儲過程

--插入數據的存儲過程示例

CREATE procedure [dbo].[proc_CreateUser]

@username nvarchar(200),

@password nvarchar(200),

@truename nvarchar(200),

@role int

as

insert INTO Users (UserName,Password,TrueName,Role,CreateDate)

VALUES(@username,@password,@truename,@role,GETDATE)

--更新數據示例

CREATE procedure [dbo].[proc_UpdateUser]

@id int,

@username nvarchar(200)

as

update Users

set UserName=@username

where Id=@id

--刪除數據

CREATE procedure [dbo].[proc_DelUser]

@id int

as

delete Users where Id=@id

14、視圖示例

create view view_user

as

select id from user

go

歡迎關注我的公眾號(同步更新文章):DoNet技術分享平台

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 科技優家 的精彩文章:

大數據平台搭建-zookeeper集群的搭建
BinarySearchTree-二叉搜索樹
C# servicestack.redis 互通 java jedis
Facebook開源Zstandard新型壓縮演算法代替Zlib 簡單使用
大數據操作:刪除和去重

TAG:科技優家 |

您可能感興趣

經典街機遊戲中,那些能爆出物品的BOSS們
非常經典的句子,句句經典
非常精闢的一句話經典語錄,句句大實話
很經典的短語,句句精闢
REVISE YOUR CLASSICS 重回經典|種草機
回味經典 重玩《質量效應2》必裝的MOD都在這裡
sql經典面試試題,讓你更好的了解和運用sql語言
動漫《銀魂》中的經典台詞,一句一個正/負能量
經典解壓工具WinRAR更新:圖標變Q萌
一句話的經典說說語錄,句句經典,每一句都是人生哲理,值得收藏
LQ經典國學空中課堂
經典中的經典,Burberry格紋圍巾
LG手機敗走中國!扒一扒LG旗下的那些經典產品們
這些古代著名的酒樓對聯,用典精準,構思巧妙,堪稱經典
每個護膚大牌,都有一個經典好用的爆款產品
U Car經典唱片:《朋友》
細數遊戲中那些經典bug
歷史上他說的這一句經典話語,成為現今酒場常用的勸酒詞
霍金的經典語錄 I 中葡對照
弘一大師經典語錄,句句精華,值得收藏!