成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你知道一行SQL代碼能做什么?

運維 數據庫運維
最近在知乎上看到一個問題:一行代碼可以做什么?答題者數萬計,都是一些非常“高端”的操作,就在想一行SQL代碼能做什么呢?

[[402099]]

本文轉載自微信公眾號「SQL數據庫開發」,作者丶平凡世界。轉載本文請聯系SQL數據庫開發公眾號。

最近在知乎上看到一個問題:一行代碼可以做什么?答題者數萬計,都是一些非常“高端”的操作,就在想一行SQL代碼能做什么呢?

SQL一行代碼其實有很多很多,一些常見的比如:

  1. SELECT * FROM TableName  
  2. INSERT INTO TableName VALUES(...)  
  3. TRUNCATE TABLE TableName ..... 

這些就沒什么意思了,我們來給大家看一些比較“高級”的。

1、復制表結構

  1. SELECT * INTO Customers_bak FROM Customers WHERE 1=2; 
  2. 或者 
  3. SELECT TOP 0 * INTO Customers_bak FROM Customers; 

可以得到與Customers 表結構一樣的Customers_bak ,而且Customers_bak 中沒有數據。

2、查詢表里是否存在數據

  1. SELECT TOP 1  1  FROM Customers 

結果如下:

注:第一個1是查詢是否存在一條記錄,第二個1就是單純的數值1。

3、隨機獲取一行數據

表Customers中數據如下:

現在隨機獲取一行數據

  1. SELECT TOP 1 * FROM Customers ORDER BY NEWID(); 

結果如下:

注:多次執行,結果會不一樣

4、獲取第6到10行的記錄

表Person數據如下:

獲取第6到10行數據

  1. SELECT TOP 5 * FROM (SELECT TOP 10 * FROM Person ORDER BY ID ) a ORDER BY ID DESC 

(提示:可以左右滑動代碼)

結果如下:

注:如果希望是升序,可以在外面在加一層SELECT子查詢對ID進行升序排序。

5、對空值賦默認值

  1. SELECT  ISNULL(Price,0) FROM  Orders 

注:Price為空值時會默認賦0

6、將日期轉換成文本格式

  1. SELECT  CONVERT(VARCHAR(10),CreateDate,120) FROM Students 

注:CreateDate為帶時間的完整日期格式,執行后會得到不帶時間的字符串,如'2020-05-31'

7、保留2位小數

  1. SELECT CAST(Amount as NUMERIC(18,2)) FROM Orders 

注:Amount是帶2位以上的小數格式,轉換后的小數會四舍五入。

8、刪除重復記錄(除了主鍵不同,其他字段均相同)

表Person數據如下:

刪除其中除ID以為其他都重復的記錄

  1. DELETE FROM Person WHERE ID NOT IN (SELECT MAX(ID) FROM Person GROUP BY Name,Age,Sex,Phone) 

刪除后結果如下:

9、查詢當前數據庫中的所有表名

  1. SELECT   NAME FROM SYSOBJECTS WHERE TYPE='U' 

結果如下:

10、查詢某個表里的所有列名

  1. SELECT NAME FROM SYSCOLUMNS WHERE ID=OBJECT_ID('Person'

結果如下:

11、將B表中的字段內容更新到A表

  1. UPDATE A SET A.Name=(SELECT B.Name FROM B WHERE A.ID=B.ID) 

12、獲取笛卡爾積

  1. SELECT A.*,B.* FROM A,B 

13、按姓氏筆畫多少排序

  1. SELECT Name FROM Person ORDER BY Name  Collate Chinese_PRC_Stroke_CI_AS 

結果如下:

注:默認是直接按姓氏拼音排序

14、延遲3秒執行查詢語句

  1. WAITFOR DELAY '0:0:3' SELECT * FROM Person 

結果如下:

15、將查詢結果轉換為XML格式

  1. SELECT * FROM Person WHERE ID=1 FOR XML PATH 

結果如下:

16、將小數轉換成百分數

  1. SELECT CAST(CAST((0.8888*100) AS NUMERIC(18,2)) as VARCHAR(20)) + '%' 

結果如下:

17、處理除數為0

  1. SELECT ISNULL(A/NULLIF(B,0),1) FROM TABLEA 
  2. 或 
  3. SELECT  CASE WHEN B=0 THEN 1 ELSE A/B END  FROM TABLEA 

注:A為任意數值,B為0

 

下次想到一些好用的SQL代碼再分享給大家,如果你平常也有一些好用的SQL代碼,歡迎可以在留言區分享一下。

 

責任編輯:武曉燕 來源: SQL數據庫開發
相關推薦

2024-08-08 09:15:08

SQL代碼復制表

2021-09-22 09:43:47

Python 開發編程語言

2015-11-10 09:26:24

51CTO云計算專題

2017-08-24 10:00:05

SDWANGoogle網絡

2016-12-02 08:53:18

Python一行代碼

2020-12-03 08:25:10

Nginx

2013-02-26 09:46:10

大數據非結構化數據

2019-10-30 14:44:50

區塊邏Token論文

2019-06-24 12:28:16

戴爾

2024-05-27 00:00:00

.NET游戲引擎C#

2022-02-23 14:37:48

代碼Pythonbug

2019-11-26 14:53:11

Nginx反向代理負載均衡

2023-07-19 08:01:04

switch?select?語句

2015-03-20 14:51:09

Testin云測

2020-02-19 15:02:23

代碼開發工具

2021-08-23 17:49:02

代碼開發模型

2014-02-12 13:43:50

代碼并行任務

2022-04-09 09:11:33

Python

2017-04-05 11:10:23

Javascript代碼前端

2023-05-04 12:43:26

機器學習算法
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区成人 | 99久久久国产精品 | 日韩免费高清视频 | 亚洲黄色av网站 | 成人精品国产 | 中文字幕第7页 | 欧美亚洲另类丝袜综合网动图 | 成人免费在线小视频 | 精品国产欧美一区二区三区不卡 | 日本电影免费完整观看 | 成人片免费看 | 久久久不卡网国产精品一区 | 国产在线观看网站 | 乳色吐息在线观看 | 久久精品福利 | 美女爽到呻吟久久久久 | av一区二区在线观看 | 欧美a在线 | 欧美一区视频在线 | 波多野结衣精品在线 | 91污在线 | 羞羞视频网站免费观看 | 三级av在线 | 国产成在线观看免费视频 | 高清亚洲| 国产精品1区2区 | 国产日韩欧美一区二区在线播放 | 99久久久99久久国产片鸭王 | av午夜电影 | 韩国av网站在线观看 | 成人在线免费观看视频 | 久久国产综合 | 日韩精品中文字幕一区二区三区 | 久久久久久免费毛片精品 | 国产一级片免费在线观看 | 天天草天天干 | 成人在线播放 | 国产三级一区二区三区 | 欧美性高潮 | 日韩乱码在线 | 中文字幕亚洲一区二区三区 |