日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

你真的会玩SQL吗?简单的数据修改

發布時間:2024/1/17 数据库 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 你真的会玩SQL吗?简单的数据修改 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

你真的會玩SQL嗎?系列目錄

你真的會玩SQL嗎?之邏輯查詢處理階段

你真的會玩SQL嗎?和平大使 內連接、外連接

你真的會玩SQL嗎?三范式、數據完整性

你真的會玩SQL嗎?查詢指定節點及其所有父節點的方法

你真的會玩SQL嗎?讓人暈頭轉向的三值邏輯

你真的會玩SQL嗎?EXISTS和IN之間的區別

你真的會玩SQL嗎?無處不在的子查詢

你真的會玩SQL嗎?Case也瘋狂

你真的會玩SQL嗎?表表達式,排名函數

你真的會玩SQL嗎?簡單的 數據修改

你真的會玩SQL嗎?你所不知道的 數據聚合

你真的會玩SQL嗎?透視轉換的藝術

你真的會玩SQL嗎?冷落的Top和Apply

你真的會玩SQL嗎?實用函數方法匯總

你真的會玩SQL嗎?玩爆你的數據報表之存儲過程編寫(上)

你真的會玩SQL嗎?玩爆你的數據報表之存儲過程編寫(下)

?

項目會有種需要將A表中的部分字段與B表中的部分字段聯合查詢后保存到C表,或更新到C表,那怎么實現呢?

  • select into
  • insert select
  • delete from
  • update from
  • insert exec 語句可以把存儲過程或動態批處理返回的結果保存到現有表中(這里暫時先不講)
  • Insert是T-sql中常用語句,Insert INTO table(field1,field2,...) values(value1,value2,...)這種形式的在應用程序開發中必不可少。但我們在開發、測試過程中,經常會遇到需要表復制的情況,如將一個table1的數據的部分字段復制到table2中,或者將整個table1復制到table2中,這時候我們就要使用SELECT INTO 和 INSERT INTO SELECT 表復制語句了。

    ????? 1.INSERT INTO SELECT語句

    ??????語句形式為:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

    ????? 要求目標表Table2必須存在,由于目標表Table2已經存在,所以我們除了插入源表Table1的字段外,還可以插入常量。示例如下:

    --1.創建測試表create TABLE Table1(a varchar(10),b varchar(10),c varchar(10),CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED(a ASC)) ON [PRIMARY]create TABLE Table2(a varchar(10),c varchar(10),d int,CONSTRAINT [PK_Table2] PRIMARY KEY CLUSTERED(a ASC)) ON [PRIMARY]GO--2.創建測試數據Insert into Table1 values('','asds','90')Insert into Table1 values('','asds','100')Insert into Table1 values('','asds','80')Insert into Table1 values('','asds',null)GOselect * from Table2--3.INSERT INTO SELECT語句復制表數據Insert into Table2(a, c, d) select a,c,5 from Table1GO--4.顯示更新后的結果select * from Table2GO--5.刪除測試表drop TABLE Table1drop TABLE Table2

    ?

    2.SELECT INTO FROM語句

    ??????語句形式為:SELECT vale1, value2 into #Table2 from Table1

    ?要求目標表Table2不存在因為在插入時會自動創建表Table2,并將Table1中指定字段數據復制到臨時表Table2。示例如下:

    --1.創建測試表create TABLE Table1(a varchar(10),b varchar(10),c varchar(10),CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED(a ASC)) ON [PRIMARY]GO--2.創建測試數據Insert into Table1 values('','asds','90')Insert into Table1 values('','asds','100')Insert into Table1 values('','asds','80')Insert into Table1 values('','asds',null)GO--3.SELECT INTO FROM語句創建表Table2并復制數據select a,c INTO #Table2 from Table1GO--4.顯示更新后的結果select * from #Table2GO--5.刪除測試表drop TABLE Table1drop TABLE #Table2

    ?3.delete from

    基于聯接的delete,如想刪除2008年5月6日以后下的訂單明細

    DELETE FROM od FROM sales.orderdetails AS odJOIN sales.orders AS o ON od.orderid = o.orderid WHERE o.orderdate >= '20080506'

    4.update from?

    基于聯接的update,如想更新由usa客戶所下單的發貨信息,用customers表中客戶的country,region,city改寫shipcountry,shipregion,shipcity

    UPDATE o SET shipcountry = c.country ,shipregion = c.region ,shipcity = c.city FROM sales.orders AS oJOIN sales.customers AS c ON o.custid = c.custid WHERE c.country = 'usa'

    ?今天內容很簡單,就不做練習了,多看看文章……

    轉載于:https://www.cnblogs.com/zhangs1986/p/4915124.html

    總結

    以上是生活随笔為你收集整理的你真的会玩SQL吗?简单的数据修改的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。