精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

避免!5個編寫SQL查詢時常出現的錯誤

數據庫 SQL Server
SQL被廣泛應用于數據分析和數據提取。易上手,受到業內人士的一致好評。盡管剛開始編寫SQL相當容易,但是出錯率也是相當的高。

 SQL被廣泛應用于數據分析和數據提取。易上手,受到業內人士的一致好評

盡管剛開始編寫SQL相當容易,但是出錯率也是相當的高。

[[284506]]

下面是小芯整理的,在編寫SQL查詢代碼時大家經常犯的5個錯誤。

示例很短,可能看起來很簡單。但是,在處理更大的查詢時,這些錯誤可就不會一目了然了。其中一些示例是特定于AWS Redshift的,而另一些則會出現在其他SQL數據庫(Postgres、MySQL等)。這些示例應該在本地數據庫上運行,或者可以使用SQLFiddle在線運行。

示例SQL查詢可下載。

設定

創建兩個臨時表,其中有幾個條目有助于處理示例。

Sales表

該表包含帶有時間戳、產品、價格等的銷售條目。請注意,key列是唯一的,其他列中的值可以重復(例如ts列)。

 

  1. DROP TABLE IF EXISTSsales; 
  2.  
  3. CREATE TEMPORARY TABLE sales 
  4.  
  5.  
  6. key varchar(6), 
  7.  
  8. ts timestamp
  9.  
  10. product integer
  11.  
  12. completed boolean, 
  13.  
  14. price float 
  15.  
  16. );INSERT INTO sales 
  17.  
  18. VALUES ('sale_1''2019-11-08 00:00', 0, TRUE, 1.1), 
  19.  
  20. ('sale_2''2019-11-08 01:00', 0, FALSE,1.2), 
  21.  
  22. ('sale_3''2019-11-08 01:00', 0, TRUE,1.3), 
  23.  
  24. ('sale_4''2019-11-08 01:00', 1, FALSE,1.4), 
  25.  
  26. ('sale_5''2019-11-08 02:00', 1, TRUE,1.5), 
  27.  
  28. ('sale_6''2019-11-08 02:00', 1, TRUE,1.5);SELECT * FROM sales; 

 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

Hourly delay表

該表包含某一天每小時的延遲時間。請注意,ts列在下表中是唯一的。

 

  1. DROP TABLE IF EXISTShourly_delay; 
  2.  
  3. CREATE TEMPORARY TABLE hourly_delay 
  4.  
  5.  
  6. ts timestamp
  7.  
  8. delay float 
  9.  
  10. ); 
  11.  
  12. INSERT INTO hourly_delay 
  13.  
  14. VALUES ('2019-11-08 00:00', 80.1), 
  15.  
  16. ('2019-11-08 01:00', 100.2), 
  17.  
  18. ('2019-11-08 02:00', 70.3);SELECTFROM hourly_delay; 

 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

1.按相同時間戳排序

檢索每種產品最近一次的售價:

 

  1. SELECT price 
  2.  
  3. FROM (SELECT price, row_number() OVER (PARTITION BYproduct ORDER BY ts DESCAS ix FROM sales) ASq1 
  4.  
  5. WHERE ix = 1; 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

 

以上查詢的問題是多個銷售具有相同的時間戳。此查詢在相同數據上的連續運行可能得出不同的結果。下圖可見,產品0在2019-11-11-08 01:00有兩次銷售,價格分別為1.2和1.3。

 

避免!5個編寫SQL查詢時常出現的錯誤

 

用下一個錯誤修復這個查詢:)

2. 根據條件計算平均值

計算完成銷售的產品的平均價格。值是(1.1 + 1.3 + 1.5 + 1.5)/ 4,即1.35。

 

  1. SELECT avg(price) 
  2.  
  3. FROM (SELECT CASE WHEN completed = TRUETHEN price else 0 END AS price FROM sales) ASq1; 

 

當運行查詢時,值為0.9。為什么?因為發生了這一計算:(1.1+0+1.3+0+1.5+1.5)/6是0.9。查詢中的錯誤是,將0設置為不應包含的項。應使用NULL而不是0。

 

  1. SELECT avg(price) 
  2.  
  3. FROM (SELECT CASE WHEN completed = TRUETHEN price else NULL END AS price FROMsales) AS q1; 

 

當前,輸出和預計一樣是1.35。

3.計算整數列的平均值

計算含有整數的product列的平均值。

 

  1. SELECT avg(product) 
  2.  
  3. FROM sales; 

 

Product列中有3個0和3個1,預估平均值為0.5。大多數數據庫(例如最新版本的Postgres)將返回0.5,但是Redshift將返回0,因為它不會自動將product列強制轉換為float。因此需要將其強制轉換為float類型:

 

  1. SELECT avg(product::FLOAT
  2.  
  3. FROM sales; 

 

4. 內連接

假設要對每天的所有銷售延遲進行匯總,并計算每天的平均銷售價格。

 

  1. SELECT t2.ts::DATEsum(t2.delay),avg(t1.price) 
  2.  
  3. FROM hourly_delay AS t2 
  4.  
  5. INNER JOIN sales ASt1 ON t1.ts = t2.ts 
  6.  
  7. GROUP BY t2.ts::DATE

 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

結果是錯誤的!以上查詢將hourly_delay表中的delay列乘以倍數,如下圖所示。這是因為按時間戳連接,該時間戳在hourly_delay表中是唯一的,但在sales表中會重復。

 

避免!5個編寫SQL查詢時常出現的錯誤

 

為了修復這個問題,要在一個單獨的子查詢中為每個表計算統計信息,然后連接匯總。這使得時間戳在兩個表中都是唯一的。

 

  1. SELECT t1.ts, daily_delay, avg_price 
  2.  
  3. FROM (SELECT t2.ts::DATEsum(t2.delay) ASdaily_delay FROM hourly_delay AS t2 GROUP BYt2.ts::DATEAS t2 
  4.  
  5. INNER JOIN (SELECTts::DATE AS ts, avg(price) AS avg_price FROM sales GROUPBY ts::DATEAS t1 ON t1.ts = t2.ts; 

 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

5.將列添加到ORDER BY

對上述錯誤的補救是顯而易見的。將key列添加到ORDER BY,這樣一來,查詢結果就可以在相同數據上重復出現——快速修復。

 

  1. SELECT price 
  2.  
  3. FROM (SELECT price, row_number() OVER (PARTITION BYproduct ORDER BY ts, key DESCAS ix FROMsales) AS q1 
  4.  
  5. WHERE ix = 1; 

 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

為什么查詢結果不同于上一次運行?在進行“快速修復”時,key列被放在了ORDER BY中的錯誤位置。它應該在DESC語句之后,而不是之前。查詢現在將返回第一筆銷售,而不是最后一筆銷售。再進行一次修正。

 

  1. SELECT product, price 
  2.  
  3. FROM (SELECT product, price, row_number() OVER (PARTITION BYproduct ORDER BY ts DESCkeyAS ix FROMsales) AS q1 
  4.  
  5. WHERE ix = 1; 

 

 

避免!5個編寫SQL查詢時常出現的錯誤

 

本次修復使結果可重復。

這些都是大家經常踩雷的SQL錯誤和解決方案。不知道你是否也感同身受,或者還有其他有關SQL查詢的趣事?記得給小芯分享喲~

責任編輯:華軒 來源: 今日頭條
相關推薦

2023-02-02 08:00:00

SQLJava開發

2023-01-09 15:16:17

2015-03-19 11:53:57

JavaSQL數據庫開發

2018-04-25 06:21:57

多云云計算IT

2021-03-09 09:52:55

技術React Hooks'數據

2020-10-20 08:00:29

AWS云安全數據安全

2021-09-16 09:05:45

SQL注入漏洞網絡攻擊

2014-04-22 09:33:49

云計算云安全云遷移

2020-02-28 08:29:34

IT網絡信息

2016-12-05 09:20:37

機器學習算法

2009-12-28 16:03:42

編寫ADO.NET

2014-12-12 10:06:41

Java

2015-09-01 16:27:31

薪資錯誤

2019-05-16 08:17:47

多云存儲云計算

2015-08-27 16:15:10

程序員面試錯誤

2021-08-02 12:04:39

測試測試框架Cypress

2020-10-04 13:29:00

SQL數據庫工具

2010-10-20 11:08:52

職場

2016-12-28 17:53:29

大數據數據可視化圖像

2021-06-23 10:06:07

IT成本削減首席意見企業實踐
點贊
收藏

51CTO技術棧公眾號

伊人久久成人| 主播大秀视频在线观看一区二区| 成人免费的视频| 欧美在线免费视频| 天堂在线中文视频| 亚洲一区二区三区四区电影| 午夜精品久久久久久久蜜桃app| 国产精品免费一区二区三区在线观看| 日韩特级黄色片| 欧美aaaaaaaaaaaa| 亚洲成人久久网| www欧美激情| 国产福利在线免费观看| 国产欧美日韩亚州综合| 成人av免费电影| 中文字幕乱码人妻无码久久| 亚洲h色精品| 亚洲人成在线播放| 潘金莲一级淫片aaaaaaa| 成人欧美一区二区三区的电影| 一区视频在线播放| 免费观看成人高| 国产精品视频无码| 久久伊人亚洲| 羞羞色国产精品| 91嫩草|国产丨精品入口| 自拍偷拍一区| 亚洲国内精品视频| 丰满少妇一区二区三区专区| 99热播精品免费| 精品久久久久久久久国产字幕| 99久re热视频精品98| 美女欧美视频在线观看免费 | 久久久久亚洲| 国产亚洲激情视频在线| 中文字幕乱视频| 欧美9999| 91精品国产一区二区| 国产小视频精品| xxxxx性欧美特大| 午夜不卡在线视频| 蜜臀精品一区二区| 青春草视频在线观看| 中文字幕视频一区| 亚洲一二区在线| 成年人视频在线看| 久久在线免费观看| 久久国产一区二区| 四虎永久在线观看| 成人国产在线观看| 国产厕所精品在线观看| www.com欧美| 国产精品一区二区视频| 91香蕉国产在线观看| 一女二男一黄一片| 九九久久精品视频| 91精品国产自产在线| 一级黄色片在线播放| 日本欧美在线观看| 国产精品久久久久高潮| 中文字幕永久在线观看| 蜜臀av一级做a爰片久久| 国产精品福利观看| 中文字幕一区二区人妻痴汉电车| 日本麻豆一区二区三区视频| 国产中文日韩欧美| 国产精品亚洲lv粉色| 狠狠色2019综合网| 97人人香蕉| 色屁屁草草影院ccyycom| av一区二区三区四区| 久久一区二区三区av| 欧美日韩免费做爰大片| 久久看人人爽人人| 亚洲7777| 日韩另类在线| 欧美日韩日本国产| 成人免费xxxxx在线视频| 99欧美精品| 日韩欧美在线不卡| 中文字幕第3页| 国产剧情一区| 久久精品一本久久99精品| 一区二区在线观看免费视频| 精品1区2区3区4区| 日韩美女在线播放| 国产精品国产av| 成人免费高清视频| 少妇特黄a一区二区三区| 国产在线高清视频| 五月天视频一区| 波多结衣在线观看| 在线播放一区二区精品视频| 亚洲毛片一区二区| 大地资源高清在线视频观看| 最新国产拍偷乱拍精品| 国产精品精品视频一区二区三区| 国产三级按摩推拿按摩| 91老司机福利 在线| 亚洲高清资源综合久久精品| 91三级在线| 色中色一区二区| 青青草精品在线| 国产免费av一区二区三区| 久久久精品久久久久| 日韩欧美高清在线观看| 久久99精品久久久久久动态图| 国产精品18毛片一区二区| 黄色网址在线播放| 亚洲自拍偷拍九九九| 亚洲狼人综合干| 国产精品丝袜在线播放| 色婷婷综合久久久久| 在线观看黄网站| 国产乱码精品1区2区3区| 日本成人看片网址| 91超碰在线播放| 欧美高清dvd| 亚洲久久久久久久| 欧美精品一线| 成人欧美一区二区三区在线湿哒哒 | 日本不卡一二三区黄网| 激情伦成人综合小说| 免费a在线看| 欧美性感一区二区三区| 免费中文字幕av| 亚洲黄色视屏| 亚洲综合色av| 黄网页免费在线观看| 色94色欧美sute亚洲线路一ni | 国产日韩欧美不卡在线| 可以看毛片的网址| 久久精品一级| 久久精品在线播放| 一区二区三区亚洲视频| 国产亚洲精品aa| 99999精品视频| 欧美人妖在线观看| 午夜免费在线观看精品视频| www.com在线观看| 亚洲欧美福利一区二区| 邪恶网站在线观看| 欧美日韩有码| 国产精品久久久久久久一区探花| 天堂v视频永久在线播放| 亚洲国产精品久久一线不卡| av漫画在线观看| 欧美激情五月| 成人欧美一区二区三区视频| 色呦呦在线资源| 欧美成人a在线| 久久久久久久国产精品毛片| 国产成人在线视频网址| 欧美另类videos| 日韩精品一区二区三区中文| 欧美老女人性视频| 亚洲精品久久久蜜桃动漫| 亚洲激情欧美激情| 丰满熟女人妻一区二区三区| 好看的日韩av电影| 国产日韩三区| 亚洲精品一区| 在线视频一区二区| 中文字幕一区二区三区波野结| 中文字幕一区二区不卡| 午夜激情影院在线观看| 欧美成人亚洲| 国产中文一区二区| 亚洲第一av| 最近中文字幕mv在线一区二区三区四区 | 亚洲免费激情| 欧美日韩一区在线播放| 97精品国产综合久久久动漫日韩| 日韩在线观看免费| 亚洲av色香蕉一区二区三区| 黄色成人在线播放| 亚洲国产日韩一区无码精品久久久| 免费在线观看精品| 男人草女人视频| 少妇久久久久| 国产日韩欧美成人| 青青在线视频| 亚洲香蕉成视频在线观看| 国产一区二区三区中文字幕 | 日韩欧美国产另类| 亚洲欧洲性图库| 在线视频 日韩| 喷水一区二区三区| 草草草视频在线观看| 亚洲精华一区二区三区| 91精品久久久久| 老牛影视精品| 男人天堂网在线| 欧美精三区欧美精三区| 黄页网站免费观看| 久久精品视频在线免费观看| а 天堂 在线| 香蕉久久夜色精品国产| 欧美日韩在线免费观看视频| 福利片在线一区二区| 国产精品美女免费看| sm国产在线调教视频| 精品亚洲永久免费精品| 国产美女精品视频国产| 懂色av影视一区二区三区| 美女网站视频色| 91亚洲精品久久久蜜桃网站| 深爱五月综合网| 日日骚欧美日韩| 欧美午夜小视频| 一本精品一区二区三区| 日本10禁啪啪无遮挡免费一区二区| 99国产精品免费网站| 国产精品夜间视频香蕉| 亚洲永久av| 欧美精品aaa| 黄色小网站在线观看| 亚洲色在线视频| 天天射,天天干| 日韩精品一区在线观看| 中文字幕制服诱惑| 日韩欧美在线观看| 日本五十熟hd丰满| 亚洲欧美福利一区二区| www.99re6| 亚洲国产成人一区二区三区| 无码人妻aⅴ一区二区三区| 国产麻豆视频一区| 一个色综合久久| 免费在线观看成人| 一区二区成人网| 免费视频最近日韩| 乱子伦视频在线看| 国产日韩欧美一区在线| 国产日本在线播放| 亚洲一级影院| 欧美综合在线播放| 亚洲人体大胆视频| 婷婷五月综合缴情在线视频| 欧美深夜福利| 免费高清一区二区三区| 欧美私人啪啪vps| a级黄色片免费| 日韩欧美视频| 一区二区三区我不卡| 欧美激情777| 在线一区高清| 亚洲综合色站| 老子影院午夜伦不卡大全| 欧美aⅴ99久久黑人专区| 一二三在线视频| 激情综合激情| 亚洲欧洲日产国码无码久久99| 一区二区三区导航| 国产裸体舞一区二区三区| 性欧美长视频| 精品亚洲一区二区三区四区| 久久草av在线| 肉丝美足丝袜一区二区三区四| 国产99久久精品| 久久人妻一区二区| 久久综合一区二区| 国产精品理论在线| 亚洲天天做日日做天天谢日日欢 | 国产日韩中文字幕| 国产亚洲高清在线观看| 国产精华一区| 国产欧美亚洲精品a| 一区二区不卡在线视频 午夜欧美不卡'| 亚州av乱码久久精品蜜桃| 成人毛片100部免费看| 一区在线视频观看| 蜜臀久久99精品久久久酒店新书 | http;//www.99re视频| 超碰成人97| 日本在线观看一区二区三区| 日韩久久综合| 日本五级黄色片| 天堂一区二区在线| 97人人爽人人| 波多野结衣中文字幕一区| 亚洲永久精品ww.7491进入| 欧美激情综合五月色丁香小说| 东京热无码av男人的天堂| 尤物在线观看一区| 国产无遮挡呻吟娇喘视频| 欧美婷婷六月丁香综合色| www久久久久久| 亚洲人成电影网站色www| 国产激情视频在线| 欧美专区第一页| 日韩视频一区二区三区四区| 蜜桃91精品入口| 欧美69视频| 尤蜜粉嫩av国产一区二区三区| 丁香五精品蜜臀久久久久99网站| 91久久免费视频| 亚洲黄色小说网站| 波多野结衣视频网址| 欧美videos大乳护士334| 国内精品一区视频| 欧美国产乱视频| 久久精品 人人爱| 九色91在线视频| 欧美.www| 欧美性猛交xxxx乱大交91| 91色视频在线| 九九精品在线观看视频| 欧美影院午夜播放| 色欲av伊人久久大香线蕉影院| 日韩在线视频观看| 日韩三级影视| 狠狠色狠狠色综合人人| 欧美一区视频| 自拍偷拍一区二区三区四区| 久久婷婷久久一区二区三区| 久久久一二三区| 8x福利精品第一导航| 国产高清一级毛片在线不卡| 91av视频在线观看| 波多野结衣欧美| 国产一二三四五| 国内精品国产三级国产a久久| 少妇精品无码一区二区免费视频| 午夜精品爽啪视频| 免费观看国产精品| 美女av一区二区| 中文字幕综合| 亚洲三区视频| 麻豆精品国产91久久久久久| mm131丰满少妇人体欣赏图| 欧美日韩国产专区| 日韩在线观看视频一区| 欧美激情一级欧美精品| 久久亚洲精精品中文字幕| 中日韩在线视频| 另类小说综合欧美亚洲| 神马久久久久久久久久久| 色婷婷精品久久二区二区蜜臀av| 视频国产在线观看| 91精品国产高清久久久久久91| 久久99国产精品久久99大师| 免费无码毛片一区二三区| 成人免费观看视频| www日韩精品| 亚洲精品视频中文字幕| 新版的欧美在线视频| 蜜桃精品久久久久久久免费影院| 国产精品毛片| 日韩精品电影一区二区| 色噜噜狠狠色综合中国| 成人av毛片| 国产日韩欧美电影在线观看| 中国精品18videos性欧美| 人妻换人妻仑乱| 亚洲国产成人av| 外国精品视频在线观看| 国产suv精品一区二区| 欧美军人男男激情gay| 久国产精品视频| 亚洲一区二区在线视频| 免费的黄色av| 国产不卡av在线| 91视频一区| 岛国大片在线免费观看| 欧美日韩亚洲成人| 九九在线视频| 91久久在线视频| 亚洲精品精选| 99精品欧美一区二区| 欧美另类z0zxhd电影| 污的网站在线观看| 国产综合动作在线观看| 日韩精品高清不卡| 一区二区在线观看免费视频| 亚洲国产精品福利| 91精品韩国| 国产亚洲精品久久久久久久| 97成人超碰视| 国产影视一区二区| 午夜精品一区二区三区在线视频| 国际精品欧美精品| 6080国产精品| 欧美性生交大片免网| 黄色网址在线免费播放| 久精品国产欧美| 九九久久精品视频 | 欧美三级视频在线播放| bt在线麻豆视频| 欧洲一区二区在线| 国产成人精品aa毛片| 久久久久久不卡| 久热国产精品视频| 中日韩免视频上线全都免费| 日韩欧美色视频| 色国产综合视频| 日韩激情美女| 曰韩不卡视频| 久久综合九色综合97婷婷| 国产高清视频免费|