大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 8個實用SQL腳本

8個實用SQL腳本

更新時間:2021-01-27 17:31:28 來源:動力節(jié)點 瀏覽3567次

生成數(shù)據(jù)庫項目時,預(yù)先部署腳本、數(shù)據(jù)庫對象定義和后期部署腳本合并為一個生成腳本,只能指定一個預(yù)先部署腳本和一個后期部署腳本,但可在預(yù)先部署腳本和后期部署腳本中包含其他腳本。在MySQL數(shù)據(jù)庫中,使用SQL腳本可以提高數(shù)據(jù)訪問的效率,并進行相關(guān)的數(shù)據(jù)處理。本文為大家介紹8個實用SQL腳本,幫助我們便捷MySQL數(shù)據(jù)庫的使用。

1.行轉(zhuǎn)列的用法PIVOT

CREATE table test(id int,name nvarchar(20),quarter int,number int)insert into test values(1,N'蘋果',1,1000)insert into test values(1,N'蘋果',2,2000)insert into test values(1,N'蘋果',3,4000)insert into test values(1,N'蘋果',4,5000)insert into test values(2,N'梨子',1,3000)insert into test values(2,N'梨子',2,3500)insert into test values(2,N'梨子',3,4200)insert into test values(2,N'梨子',4,5500)select * from test

結(jié)果:

select ID,NAME,[1] as '一季度',[2] as '二季度',[3] as '三季度',[4] as '四季度'fromtestpivot(sum(number)for quarter in([1],[2],[3],[4]))as pvt

結(jié)果:

2.列轉(zhuǎn)行的用法UNPIOVT

create table test2(id int,name varchar(20), Q1 int, Q2 int, Q3 int, Q4 int)insert into test2 values(1,'蘋果',1000,2000,4000,5000)insert into test2 values(2,'梨子',3000,3500,4200,5500)select * from test2

結(jié)果:

--列轉(zhuǎn)行select id,name,quarter,numberfromtest2unpivot(numberfor quarter in([Q1],[Q2],[Q3],[Q4]))as unpvt

結(jié)果:

3.連接遠程服務(wù)器

方法1:

select * ?from openrowset(
'SQLOLEDB',
'server=192.168.0.1;uid=sa;pwd=password',
'SELECT * FROM dbo.test')

--方法2:

select * ?from openrowset(
'SQLOLEDB',
'192.168.0.1';
'sa';
'password',
'SELECT * FROM dbo.test')當(dāng)然也可以參考以前的示例,建立DBLINK進行遠程連接

4.把多行SQL數(shù)據(jù)變成一條多列數(shù)據(jù),即新增列

SELECT
?id,
?name,
?SUM(CASE WHEN quarter=1 THEN number ELSE 0 END) '一季度',
?SUM(CASE WHEN quarter=2 THEN number ELSE 0 END) '二季度',
?SUM(CASE WHEN quarter=3 THEN number ELSE 0 END) '三季度',
?SUM(CASE WHEN quarter=4 THEN number ELSE 0 END) '四季度'FROM testGROUP BY id,name

結(jié)果:

我們將原來的4列增加到了6列。細心的朋友可能發(fā)現(xiàn)了這個結(jié)果和上面的行轉(zhuǎn)列怎么一模一樣?其實上面的行轉(zhuǎn)列是省略寫法,這種是比較通用的寫法。

5、表復(fù)制

語法1:Insert INTO table(field1,field2,...) values(value1,value2,...)

語法2:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

(要求目標(biāo)表Table2必須存在,由于目標(biāo)表Table2已經(jīng)存在,所以我們除了插入源表Table1的字段外,還可以插入常量。)

語法3:SELECT vale1, value2 into Table2 from Table1

(要求目標(biāo)表Table2不存在,因為在插入時會自動創(chuàng)建表Table2,并將Table1中指定字段數(shù)據(jù)復(fù)制到Table2中。)

語法4:使用導(dǎo)入導(dǎo)出功能進行全表復(fù)制。如果是使用【編寫查詢以指定要傳輸?shù)臄?shù)據(jù)】,那么在大數(shù)據(jù)表的復(fù)制就會有問題?因為復(fù)制到一定程度就不再動了,內(nèi)存爆了?它也沒有寫入到表中。而使用上面3種語法直接執(zhí)行是會馬上刷新到數(shù)據(jù)庫表中的,你刷新一下mdf文件就知道了。

6.利用帶關(guān)聯(lián)子查詢Update語句更新數(shù)據(jù)

--方法1:Update Table1set c = (select c from Table2 where a = Table1.a)where c is null

--方法2:update  Aset  newqiantity=B.qiantityfrom  A,Bwhere  A.bnum=B.bnum

--方法3:update(select A.bnum ,A.newqiantity,B.qiantity from Aleft join B on A.bnum=B.bnum) AS Cset C.newqiantity = C.qiantitywhere C.bnum ='001'

7.字符串替換SUBSTRING/REPLACE

SELECT REPLACE('abcdefg',SUBSTRING('abcdefg',2,4),'**')

結(jié)果:

SELECT REPLACE('13512345678',SUBSTRING('13512345678',4,11),'********')

結(jié)果:

SELECT REPLACE('[email protected]','1234567','******')

結(jié)果:

8.查詢一個表內(nèi)相同紀(jì)錄 HAVING

如果一個ID可以區(qū)分的話,可以這么寫

SELECT * FROM HR.Employees

結(jié)果:

select * from HR.Employeeswhere title in (select title from HR.Employeesgroup by titlehaving count(1)>1)

結(jié)果:

對比一下發(fā)現(xiàn),ID為1,2的被過濾掉了,因為他們只有一條記錄

如果幾個ID才能區(qū)分的話,可以這么寫

select * from HR.Employeeswhere title+titleofcourtesy in(select title+titleofcourtesyfrom HR.Employeesgroup by title,titleofcourtesyhaving count(1)>1)

結(jié)果:

title在和titleofcourtesy進行拼接后符合條件的就只有ID為6,7,8,9的了

以上就是為大家推薦的8個實用SQL腳本,在MySQL數(shù)據(jù)庫的使用過程中會經(jīng)常用到,最好能夠記住。實在記不住也沒有關(guān)系,在需要的時候可以隨時來本站的MySQL教程查詢即可。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 成人午夜亚洲影视在线观看 | 久久精品视频日本 | 精品久久久久久影院免费 | 国产免费一级高清淫曰本片 | 99精品国产在这里白浆 | 四虎免费最新在线永久 | 成 人 黄 色 大 片全部 | 99热这里只有精品2 99热这里只有精品3 | 四虎影在线永久免费观看 | 18禁片一级毛片视频播放免费看 | 久久亚洲精品成人综合 | 日本高清二区 | 国产精品国产三级国快看 | 天天欲色成人综合网站 | 日本高清在线精品一区二区三区 | 九九影院在线观看 | 国产a精品 | 免费看欧美毛片大片免费看 | 国产成人精品免费视频大全办公室 | 在线亚洲欧洲福利视频 | 欧美看片| 99精品国产兔费观看久久99 | 男人天堂.com | 国产日韩欧美一区二区 | 国产精品视频九九九 | 毛片免费全部免费观看 | 波多野结衣久久精品 | 亚洲国产精品悠悠久久琪琪 | 四虎永久在线免费观看 | 日本在线亚州精品视频在线 | 免费看国产片 | 国产美女久久精品香蕉69 | 精品美女在线 | 欧美精品亚洲人成在线观看 | 91精品国产高清91久久久久久 | 欧美日韩中文字幕在线 | 全部免费毛片免费播放 | 久草视频播放 | 久草免费在线观看 | 天天干夜夜玩 | 日日碰夜夜操 |