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

首頁 > 開發 > 綜合 > 正文

11個實用經典的SQL小貼士

2024-07-21 02:47:57
字體:
來源:轉載
供稿:網友
11個實用經典的SQL小貼士

  學習工作之余,在沒有要解決問題的壓力之下,還是建議系統的看看書,對于一些認為沒啥用的知識點,也建議去仔細的看看,練練手,說不定什么時候就用到了,到時也好有針對性的去查,不至于盲目的按照自己的思路,重復的創造一些低效的解決方法。

======正文開始===========

  1.[]的使用

  當我們所要查的表是系統關鍵字或者表名中含有空格時,需要用[]括起來,例如新建了兩個表,分別為user,user info,那么select * from user和select * from user info就要報錯,需要寫成:select * from [user] 和 select * from [user info],不過千萬不要因為有[]的幫助,就隨意起名了,那是自找麻煩,不過我確實看到有人把用戶表起名為user的。

  2.NULLIF函數

  NULLIF(ExPRession1,Expression2):給定兩個參數Expression1和Expression2,如果兩個參數相等,則返回NULL;否則就返回第一個參數。

  等價于:Case WHEN Expression1=Expression2 Then NULL ELSE Expression1。

  例如Select NULLIF(1,1)返回NULL,Select NULLIF(1,2)返回1。

  有一個實際的應用,例如防止除0操作的放生,可以使用a/NULLIF(b,0),這樣就不怕b是0了,當然除0操作也可以通過別的方式判斷。

  3.NULL

  NULL是個神奇的東西,表示空值,未知值,任何數與它加減乘除都返回NULL。

  4.ISNULL函數

  ISNULL(Expression1,Expression2):給定兩個參數Expression1和Expression2,如果Expression1是NULL,那么返回Expression2,否則返回Expression1。

  等價于:Case WHEN Expression1 is NULL Then Expression2 ELSE Expression1。

  例如Select ISNULL(NULL,1)返回1,Select ISNULL(1,2)返回1。

  有一個實際的應用,可以對空值進行默認值替代,例如SELECT ISNULL(email,’沒有填寫email’) from table1,所有email為null的,用’沒有填寫email’來替代。

  5.COALESCE函數

  COALESCE(Expression1,Expression2,Expression3,……):接受一系列的表達式或列,返回第一個非空的值。

  例如SELECT COALESCE(NULL,NULL,4,NULL,NULL,5),那么返回4,如果里面的參數都為NULL,那么會報錯。

  6.WITH TIES

  與top()和order by 一起用,可以返回多于top的行。防止丟失想要的信息。

  例如:有個表table1

  (1)select * from table1 order by name desc :結果如下:

  

  (2)select top(3) * from table1 order by name desc:結果如下:(只有三條)

  

  (3)select top(3) with ties * from table1 order by name desc:結果如下:

  

  7.ORDER BY NEWID():返回隨機排序結果。

  8.BETWEEN a AND b:返回大于等于a,小于等于b的結果。如果a>b,那么返回NULL。

  9.不要在where條件中使用函數,會強制每一行都計算該函數,無法使用索引查找。

  例如:select * from table1 where id+3>5和select * from table1 where id>5-3,后者效率比前者高。

  10.許多以_desc結尾的列,是為了更友好的表示一個列的含義。

  例如:SELECT * FROM sys.databases

  

  11.推薦一個小插件,SQL Prompt,配合Microsoft SQL Server Management Studio,使用起來非常方便,同時再加上以下幾個快捷鍵:

  (1)ctrl+5或F5,運行代碼,如果想運行特定的語句,那么只是選中該語句,然后F5或ctrl+E即可。

  (2)ctrl+L:顯示執行計劃。

  (3)ctrl+R:顯示隱藏下面的結果窗口,增大自己書寫sql的空間。

  (4)ctrl+K,然后按Y,格式化SQL代碼。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 毕节市| 三门峡市| 南汇区| 洱源县| 黄陵县| 陵水| 宁城县| 桑日县| 遵义县| 泽州县| 文登市| 赫章县| 漾濞| 泸定县| 镇原县| 江津市| 江安县| 临洮县| 万山特区| 通州区| 台南市| 楚雄市| 修水县| 曲阳县| 广昌县| 平凉市| 宿迁市| 田林县| 塔城市| 三门县| 安乡县| 巴青县| 建昌县| 天峻县| 华宁县| 江山市| 凌源市| 怀远县| 湛江市| 泸州市| 博客|