国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

實用的SQL語句

2024-07-21 02:48:45
字體:
來源:轉載
供稿:網友
實用的SQL語句行列互轉復制代碼createtabletest(idint,namevarchar(20),quarterint,PRofileint)insertintotestvalues(1,'a',1,1000)insertintotestvalues(1,'a',2,2000)insertintotestvalues(1,'a',3,4000)insertintotestvalues(1,'a',4,5000)insertintotestvalues(2,'b',1,3000)insertintotestvalues(2,'b',2,3500)insertintotestvalues(2,'b',3,4200)insertintotestvalues(2,'b',4,5500)select*fromtest--行轉列selectid,name,[1]as"一季度",[2]as"二季度",[3]as"三季度",[4]as"四季度",[5]as"5"fromtestpivot(sum(profile)forquarterin([1],[2],[3],[4],[5]))aspvtcreatetabletest2(idint,namevarchar(20),Q1int,Q2int,Q3int,Q4int)insertintotest2values(1,'a',1000,2000,4000,5000)insertintotest2values(2,'b',3000,3500,4200,5500)select*fromtest2--列轉行selectid,name,quarter,profilefromtest2unpivot(profileforquarterin([Q1],[Q2],[Q3],[Q4]))asunpvt復制代碼

sql替換字符串 substring replace復制代碼--例子1:updatetbPersonalInfosetTrueName=replace(TrueName,substring(TrueName,2,4),'**')whereID=1--例子2:updatetbPersonalInfosetMobile=replace(Mobile,substring(Mobile,4,11),'********')whereID=1--例子3:updatetbPersonalInfosetEmail=replace(Email,'chinamobile','******')whereID=1復制代碼

SQL查詢一個表內相同紀錄 having如果一個ID可以區分的話,可以這么寫select*from表whereIDin(selectIDfrom表groupbyIDhavingsum(1)>1)如果幾個ID才能區分的話,可以這么寫select*from表whereID1+ID2+ID3in(selectID1+ID2+ID3from表groupbyID1,ID2,ID3havingsum(1)>1)其他回答:數據表是zy_bho,想找出ZYH字段名相同的記錄復制代碼--方法1:SELECT*FROMzy_bhoaWHEREEXISTS(SELECT1FROMzy_bhoWHERE[PK]<>a.[PK]ANDZYH=a.ZYH)--方法2:selecta.*fromzy_bhoajoinzy_bhobon(a.[pk]<>b.[pk]anda.zyh=b.zyh)--方法3:select*fromzy_bbowherezyhin(selectzyhfromzy_bbogroupbyzyhhavingcount(zyh)>1)--其中pk是主鍵或是unique的字段。復制代碼把多行SQL數據變成一條多列數據,即新增列復制代碼SelectDeptName=O.OUName,'9G'=Sum(CaseWhenPersonalGrade=9Then1Else0End),'8G'=Sum(CaseWhenPersonalGrade=8Then1Else0End),'7G4'=Sum(CaseWhenPersonalGrade=7ANDJobGrade=4Then1Else0End),'7G3'=Sum(CaseWhenPersonalGrade=7ANDJobGrade=3Then1Else0End),'6G'=Sum(CaseWhenPersonalGrade=6Then1Else0End),'5G3'=Sum(CaseWhenPersonalGrade=5ANDJobGrade=3Then1Else0End),'5G2'=Sum(CaseWhenPersonalGrade=5ANDJobGrade=2Then1Else0End),'4G'=Sum(CaseWhenPersonalGrade=4Then1Else0End),'3G2'=Sum(CaseWhenPersonalGrade=3ANDJobGrade=2Then1Else0End),'3G1'=Sum(CaseWhenPersonalGrade=3ANDJobGrade=1Then1Else0End),'2G'=Sum(CaseWhenPersonalGrade=2Then1Else0End),'1G'=Sum(CaseWhenPersonalGrade=1Then1Else0End),--'未定級'=Sum(CaseWhenPersonalGrade=NULLThen1Else0End)復制代碼

表復制insertintoPhoneChange_Num([IMSI],Num)SELECT[IMSI],count([IMEI])asnumFROM[Test].[dbo].[PhoneChange]groupby[IMSI]orderbynumdesc

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

語法2:Insert into Table2(field1,field2,...) select value1,value2,... from Table1(要求目標表Table2必須存在,由于目標表Table2已經存在,所以我們除了插入源表Table1的字段外,還可以插入常量。)

語法3:SELECT vale1, value2 into Table2 from Table1(要求目標表Table2不存在,因為在插入時會自動創建表Table2,并將Table1中指定字段數據復制到Table2中。)

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

利用帶關聯子查詢Update語句更新數據復制代碼--方法1:UpdateTable1setc=(selectcfromTable2wherea=Table1.a)wherecisnull--方法2:updateAsetnewqiantity=B.qiantityfromA,BwhereA.bnum=B.bnum--方法3:update(selectA.bnum,A.newqiantity,B.qiantityfromAleftjoinBonA.bnum=B.bnum)ASCsetC.newqiantity=C.qiantitywhereC.bnum=XX復制代碼

連接遠程服務器--方法1:select*fromopenrowset('SQLOLEDB','server=192.168.0.67;uid=sa;pwd=passWord','SELECT*FROMBCM2.dbo.tbAppl')--方法2:select*fromopenrowset('SQLOLEDB','192.168.0.67';'sa';'password','SELECT*FROMBCM2.dbo.tbAppl')

Date 和 Time 樣式

不帶世紀數位 (yy) (1) 帶世紀數位 (yyyy) 標準 輸入/輸出 (3)

-

0100 (1,2)

默 認

mon dd yyyy hh:miAM(或 PM)

1

101

美 國

mm/dd/yyyy

2

102

ANSI

yy.mm.dd

3

103

英 國/法國

dd/mm/yyyy

4

104

德 國

dd.mm.yy

5

105

意 大利

dd-mm-yy

6

106(1)

-

dd mon yy

7

107(1)

-

mon dd, yy

8

108

-

hh:mi:ss

-

9109 (1,2)

默 認設置 + 毫秒

mon dd yyyy hh:mi:ss:mmmAM(或 PM)

10

110

美 國

mm-dd-yy

11

111

日 本

yy/mm/dd

12

112

ISO

yymmdd

yyyymmdd

-

13113 (1,2)

歐 洲默認設置 + 毫秒

dd mon yyyy hh:mi:ss:mmm(24h)

14

114

-

hh:mi:ss:mmm(24h)

-

20120 (2)

ODBC 規范

yyyy-mm-dd hh:mi:ss(24h)

-

21121 (2)

ODBC 規范(帶毫秒)

yyyy-mm-dd hh:mi:ss.mmm(24h)

-

126 (4)

ISO8601

yyyy- mm-ddThh:mi:ss.mmm(無空格)

-

127(6, 7)

帶時區 Z 的 ISO8601。

yyyy-mm-ddThh:mi:ss.mmmZ

(無 空格)

-

130 (1,2)

回歷 (5)

dd mon yyyy hh:mi:ss:mmmAM

-

131 (2)

回歷 (5)

dd/mm/yy hh:mi:ss:mmmAM

復制代碼--語句及查詢結果:SELECTCONVERT(varchar(100),GETDATE(),0):0516200610:57AMSELECTCONVERT(varchar(100),GETDATE(),1):05/16/06SELECTCONVERT(varchar(100),GETDATE(),2):06.05.16SELECTCONVERT(varchar(100),GETDATE(),3):16/05/06SELECTCONVERT(varchar(100),GETDATE(),4):16.05.06SELECTCONVERT(varchar(100),GETDATE(),5):16-05-06SELECTCONVERT(varchar(100),GETDATE(),6):160506SELECTCONVERT(varchar(100),GETDATE(),7):0516,06SELECTCONVERT(varchar(100),GETDATE(),8):10:57:46SELECTCONVERT(varchar(100),GETDATE(),9):0516200610:57:46:827AMSELECTCONVERT(varchar(100),GETDATE(),10):05-16-06SELECTCONVERT(varchar(100),GETDATE(),11):06/05/16SELECTCONVERT(varchar(100),GETDATE(),12):060516SELECTCONVERT(varchar(100),GETDATE(),13):1605200610:57:46:937SELECTCONVERT(varchar(100),GETDATE(),14):10:57:46:967SELECTCONVERT(varchar(100),GETDATE(),20):2006-05-1610:57:47SELECTCONVERT(varchar(100),GETDATE(),21):2006-05-1610:57:47.15
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 特克斯县| 唐海县| 延吉市| 元谋县| 盐城市| 涡阳县| 宣城市| 古交市| 万源市| 洛隆县| 德令哈市| 常熟市| 衡山县| 阿城市| 册亨县| 赤水市| 中阳县| 大名县| 平原县| 河南省| 观塘区| 沁水县| 利津县| 邮箱| 宝清县| 枣庄市| 休宁县| 古丈县| 禹州市| 阳高县| 台北县| 江陵县| 大庆市| 建平县| 延边| 离岛区| 乌恰县| 合水县| 辽阳县| 炉霍县| 桐梓县|