溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

SQLServer之T-SQL增、刪、改、查

發(fā)布時(shí)間:2020-08-10 08:55:40 來(lái)源:網(wǎng)絡(luò) 閱讀:1308 作者:張晨chat 欄目:MySQL數(shù)據(jù)庫(kù)

增-插入語(yǔ)句:
insert into 表名 (列名,列名,列名)
values (數(shù)據(jù),數(shù)據(jù),數(shù)據(jù))
如-添加3班的張三成績(jī)?yōu)?0到成績(jī)表中:
insert into 成績(jī)表 (姓名,成績(jī),班級(jí))
values (張三,90,3)
·列名可以不加,不加列名數(shù)據(jù)會(huì)跟隨表的字段順序?qū)憯?shù)據(jù)
刪-刪除語(yǔ)句:
1、delete from 表名 [where 條件]
·where子句可以不加,如果不加where意思就是直接刪除整個(gè)表
如-在成績(jī)表中刪除成績(jī)小于60的學(xué)生信息:
delete from 成績(jī)表 where 成績(jī)<60
2、truncate table 表名
·意思也是直接刪除整個(gè)表
3、truancate table 和 delete的區(qū)別:
·truncate table后不跟where子句;而delete可以where,按條件刪除數(shù)據(jù)
·truncate table不記錄事務(wù)日志,所以刪除后數(shù)據(jù)無(wú)法恢復(fù);而delete相反
·truncate table刪除后會(huì)重置標(biāo)識(shí)符列;delete語(yǔ)句不會(huì)
·truncate table不能用于有外鍵約束引用的表。
改-更新語(yǔ)句:
update 表名 set 列名=更新值 [where 條件]
·where子句不加會(huì)更新所有數(shù)據(jù)
如-在成績(jī)表中給張三的成績(jī)加兩分:
update 成績(jī)表 set 成績(jī)=成績(jī)+2 where 姓名=’張三’
查select-查詢語(yǔ)句:
1、select 列名 from 表名 where 條件
2、select語(yǔ)句參數(shù):
·into:把查詢結(jié)果保存到一個(gè)新的表中
·from:跟要查詢的表
·where:查詢條件
·group by:分組查詢
·having:與group by一起使用,查詢條件
·order by:將查詢結(jié)果排序;desc為降序,asc為升序,不加默認(rèn)升序3、表達(dá)式
⑴條件表達(dá)式
SQLServer中的表達(dá)式可以包含下列一個(gè)或多個(gè)參數(shù)
·常量:表示單個(gè)指定數(shù)據(jù)值的符號(hào)。一個(gè)常量由一個(gè)或多個(gè)字母,數(shù)字字符(字母a-z、A-Z、數(shù)字0~9)或符號(hào)(!、@、#等)組成。字母,日期和時(shí)間數(shù)據(jù)類型的常量需要用單引號(hào)括起來(lái),二進(jìn)制字符串和數(shù)字常量則不需要
br/>3、表達(dá)式
⑴條件表達(dá)式
SQLServer中的表達(dá)式可以包含下列一個(gè)或多個(gè)參數(shù)
·常量:表示單個(gè)指定數(shù)據(jù)值的符號(hào)。一個(gè)常量由一個(gè)或多個(gè)字母,數(shù)字字符(字母a-z、A-Z、數(shù)字0~9)或符號(hào)(!、@、#等)組成。字母,日期和時(shí)間數(shù)據(jù)類型的常量需要用單引號(hào)括起來(lái),二進(jìn)制字符串和數(shù)字常量則不需要
·一元運(yùn)算符:僅有一個(gè)操作數(shù)的運(yùn)算符,其中“+”表示正數(shù),“-”表示負(fù)數(shù),“~”補(bǔ)數(shù)運(yùn)算符
·二元運(yùn)算符:將兩個(gè)操作數(shù)組合執(zhí)行操作的運(yùn)算符。二元運(yùn)算符可以是算術(shù)運(yùn)算符、賦值運(yùn)算符(=)、位運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、字符串串聯(lián)(或連接)運(yùn)算符(+)或一元運(yùn)算符。下圖為比較運(yùn)算符。
SQLServer之T-SQL增、刪、改、查
·like語(yǔ)句通配符:‘-’表示任何單個(gè)字符;‘%’任意長(zhǎng)度的字符;[]表示括號(hào)內(nèi)指定的字符;[^]表示不在括號(hào)內(nèi)的字符
⑵邏輯表達(dá)式
not:不是,與其他操作符一起起反義
and:和,兩個(gè)條件同時(shí)滿足
or:或者,兩個(gè)條件滿足一個(gè)

操作部分
1、查詢products表中所有的列:select from products
SQLServer之T-SQL增、刪、改、查
2、查詢products表的特定列(名稱,成本):select 名稱,成本 from products
SQLServer之T-SQL增、刪、改、查
3、查詢成本在1到5元之間的水果:select
from products where 成本 between 1 and 5
SQLServer之T-SQL增、刪、改、查
4、查詢前5行:select top 5 from products
SQLServer之T-SQL增、刪、改、查
5、改變查詢結(jié)果集的列名(查詢西瓜的名稱和成本信息并顯示為name和cost):
select 名稱 as name,成本 as cost from products where 名稱=’西瓜’
SQLServer之T-SQL增、刪、改、查
6、查詢結(jié)果排序(查找所有的水果并按成本的降序排序):select
from products where種類=’水果’ order by 成本 desc
SQLServer之T-SQL增、刪、改、查
7、分組查詢(查詢各種類的平均成本并按平均成本成本排序):select 種類,avg(成本) as平均成本 from products group by 種類 having avg (成本)>20 order by avg(成本)
SQLServer之T-SQL增、刪、改、查
8、將查詢結(jié)果保存到一個(gè)新表中(查詢所有的水果并將結(jié)果保存到newproducts表中):select into newproducts from products
SQLServer之T-SQL增、刪、改、查
刷新一下表
SQLServer之T-SQL增、刪、改、查
可以看到新的newproducts表
SQLServer之T-SQL增、刪、改、查
9、like子句(查詢出所有的經(jīng)理):select
from [員工信息表-2] where 職位 like ‘%經(jīng)理%’
SQLServer之T-SQL增、刪、改、查
10、多表查詢內(nèi)連接(從學(xué)生基本信息表和學(xué)生成績(jī)表中查找參加考試的學(xué)生的姓名和CNT成績(jī)、電話):select S.姓名,S.電話,C.CNT from 學(xué)生基本信息表 as S inner join 學(xué)生成績(jī)表 as C on S.姓名=C.姓名
SQLServer之T-SQL增、刪、改、查
11、左/右外連接:select S.姓名,S.電話,C.CNT from 學(xué)生基本信息表 as S left/right outer join 學(xué)生成績(jī)表 as C on S.姓名=C.姓名(以左外連接為例)
SQLServer之T-SQL增、刪、改、查
12、自連接(在員工信息表2中查找每個(gè)員工的上司姓名):select Y.員工姓名,S.員工姓名 as 上司姓名 from 員工信息表 as Y inner join 員工信息表 as S on Y.上司ID=S.員工ID
SQLServer之T-SQL增、刪、改、查
13、子查詢(在生產(chǎn)表中查找每個(gè)季度的生產(chǎn)數(shù)量、百分比):select 季度,sum(生產(chǎn)數(shù)量) as 每個(gè)季度的生產(chǎn)數(shù)量,str((sum(生產(chǎn)數(shù)量)/(select sum(生產(chǎn)數(shù)量) from 生產(chǎn)表))*100)+'%' as 百分比 from 生產(chǎn)表group by 季度 order by 季度
SQLServer之T-SQL增、刪、改、查
14、子查詢(在where子句中使用select 在成績(jī)表和學(xué)生表中查找課程ID=1并且成績(jī)〉80的學(xué)生):select 學(xué)生表.姓名 from 學(xué)生表 where 80<(select 分?jǐn)?shù) from 成績(jī)表 where 學(xué)生表.學(xué)生ID=成績(jī)表.學(xué)生ID AND 成績(jī)表.課程ID=1)
SQLServer之T-SQL增、刪、改、查

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI