亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

[SQL server]常用SQL(一)

系統 1817 0

1.在Select語句中使用判斷查詢:
功能:計算條件列表并返回多個可能結果表達式之一。
示例:以判斷user_pass字段值是否為空,為空時值為yes反之為no查詢數據,條件為user_name不為空
select
?case
??when user_pass is null then 'yes' else 'no'
?end as 'user_pass'
?,user_name as 'admin'
from
?admin
where
?user_name is not null

------------------------------------

2.datepart函數的使用
功能:返回代表指定日期的指定日期部分的整數。
示例:查詢2004年與2005年之間的數據
select * from admin
where datepart( yyyy,date_time )
?between 2004 and 2005

------------------------------------

3.datediff函數使用
功能:返回跨兩個指定日期的日期和時間邊界數。
示例:打印日期差
declare @date_time datetime
set @date_time = convert( datetime,'2005-05-06' )
print datediff( dd,@date_time,getdate() )


------------------------------------

4.exists關鍵字使用
功能:指定一個子查詢,檢測行的存在。
示例1:判斷用戶'admin'是否存在,如存在就返回所有行。
select *
from
?admin
where
?exists( select user_pass from admin where user_name='admin' )

示例2:判斷用戶'admin'是否存在,如不存在就返回所有行。
select *
from
?admin
where
?not exists( select user_pass from admin where user_name='admin' )


------------------------------------

5.@@IDENTITY 關鍵字
功能:返回最后插入的標識值。
示例:插入一新行,打印插入的新行的標識ID值。
insert admin( user_name,user_pass,date_time,team_group )
values
?( 'test','test',getdate(),3 )
print @@identity


------------------------------------

6.@@rowcount 關鍵字
功能:返回受上一語句影響的行數。
示例1:選擇數據,返回所選擇的數據的行數
select * from admin
print @@rowcount
示例2:更新數據,返回被更新數據所影響的行數
update admin set user_name='test' where user_name='zxb'
print @@rowcount


------------------------------------

7.Group by應用
功能:
示例1:
?SQL查詢:select type,price from titles where royalty = 10
?結果:
??type??price
??-----------------------
??business??? ?19.9900
??business??? ?11.9500
??business??? ?19.9900
??popular_comp?20.0000
??psychology? ?21.5900
??psychology? ?7.0000
??psychology? ?19.9900
??psychology? ?7.9900
??trad_cook?? ?20.9500
??trad_cook?? ?14.9900
?Group by 分組查詢:select type,sum(price) as price from titles where royalty=10 group by type
?結果:
??type??price
??-----------------------
??business??? ?51.9300
??popular_comp?20.0000
??psychology? ?56.5700
??trad_cook?? ?35.9400
?Group by all 分組查詢:select type,sum(price) as price from titles where royalty=10 group by all type
?結果:
??type??price
??-----------------------
??business??? ?51.9300
??mod_cook??? ?NULL
??popular_comp?20.0000
??psychology? ?56.5700
??trad_cook?? ?35.9400
??UNDECIDED?? ?NULL

CREATE ? PROCEDURE ?testPro
AS
????
/* ?-------?事務開始?----------? */
????
BEGIN ? TRANSACTION ?tran_test

????
/* ?--------?保存事務?---------- */
????
SAVE ? TRANSACTION ?tran_test

????????
/* ?--------?數據操作?--------- */
????????
INSERT ? [ table1 ] ?(? [ content ] ?)? VALUES ?(? ' 43332 ' ?)

????
/* ----------?提交事務?------------ */
????
COMMIT ? TRANSACTION ?tran_test

????
/* ---------?判斷是否有錯誤?---------- */
????
IF ?(? @@ERROR ? <> ? 0 ?)
????
BEGIN
????????
/* ----------?自定義錯誤輸出?---------- */
????????
RAISERROR (? ' Insert?data?error! ' , 16 , 1 ?)
????????
/* --------?事務回滾?-------- */
????????
ROLLBACK ? TRANSACTION ?tran_test
????
END
????
????
/* -------?判斷事務數是否大于0?----------- */
????
IF ?(? @@TRANCOUNT ? > ? 0 ?)
????
BEGIN
????????
/* --------?事務回滾?-------- */
????????
ROLLBACK ? TRANSACTION ?tran_test
????
END
GO
查詢用戶表結構:
SELECT ?

表名
= case ? when ?a.colorder? is ? not ? null ? then ?d.name? else ? '' ? end ,
字段序號
= a.colorder,
字段名
= a.name,
標識
= case ? when ? COLUMNPROPERTY (?a.id,a.name, ' IsIdentity ' ) = 1 ? then ? ' ' ? else ? '' ? end ,
主鍵
= case ? when ? exists ( SELECT ? 1 ? FROM ?sysobjects? where ?xtype = ' PK ' ? and ?name? in ?(?? SELECT ?name? FROM ?sysindexes? WHERE ?indid? in (??? SELECT ?indid? FROM ?sysindexkeys? WHERE ?id? = ?a.id? AND ?colid = a.colid??)))? then ? ' ' ? else ? '' ? end ,??
類型
= b.name,
占用字節數
= a.length,
長度
= COLUMNPROPERTY (a.id,a.name, ' PRECISION ' ),
小數位數
= isnull ( COLUMNPROPERTY (a.id,a.name, ' Scale ' ), 0 ),
允許空
= case ? when ?a.isnullable = 1 ? then ? ' ' else ? '' ? end ,
默認值
= isnull (e. text , '' ),
字段說明
= isnull (g. [ value ] , '' )

FROM ?syscolumns?a? left ? join ?systypes?b? on ?a.xtype = b.xusertype
?????
inner ? join ?sysobjects?d? on ?a.id = d.id?? and ?d.xtype = ' U ' ? and ??d.name <> ' dtproperties '
?????
left ? join ?syscomments?e? on ?a.cdefault = e.id
?????
left ? join ?sysproperties?g? on ?a.id = g.id? and ?a.colid = g.smallid

WHERE ?d.name = ' table1 ' ???? -- ?數據表名
ORDER ? BY ?a.colorder???? -- ?排序

查詢用戶表:
select ?表名 = name? from ?sysobjects? where ?xtype = ' U ' ? and ?name <> ' dtproperties '

[SQL server]常用SQL(一)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美亚洲综合图区在线 | 黄色www网站| 四虎影视最新网站在线播放 | 狠狠操夜夜爱 | 日本欧美一二三区色视频 | 四虎网址换成什么了2021 | 91午夜精品亚洲一区二区三区 | 亚洲欧美日韩高清中文在线 | 日韩欧美第一页 | 久久99国产亚洲精品 | 国产欧美久久久另类精品 | 国产精品亚洲专区在线观看 | 国产精品午夜激爽毛片 | 国产伦精品一区二区三区网站 | 日日爽| 成人性生活视频 | 国内精品久久久久久久aa护士 | 中国性猛交xxxx乱大交 | 国产精品久久久久激情影院 | 日本免费毛片在线高清看 | 精品的一区二区三区 | 国产精品免费观看 | 亚洲欧洲日韩国产一区二区三区 | 国产91在线九色 | 亚洲视频国产精品 | 国产精品综合网 | 国产在线成人一区二区 | 97在线视频免费播放 | 久久精品视频热 | 久久久美女视频 | 国产成人精品日本亚洲网站 | 黄色四虎影院 | 图片专区亚洲 欧美 另类 | 奇米影音777 | 国产在线精品观看一区 | 四虎永久免费网站 | 被黑人做的白浆直流在线播放 | 曰本色wa| 精品国产福利在线 | 特黄a大片免费视频 | 玖玖国产精品 |