PostgreSQL笔记(SQL语言注意点)

前端之家收集整理的这篇文章主要介绍了PostgreSQL笔记(SQL语言注意点)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

连接查询
注意区别以下三种情况

  1. 1.SELECT*2.FROMweather,cities3.WHEREcity=name;1.SELECT* 1.SELECT*2.FROMweather3.LEFTOUTERJOINcitiesON(weather.city=cities.name);1.SELECTW1.city,W1.temp_loASlow,W1.temp_hiAShigh,
  2.  
  3. 2.
  4. W2.city,W2.temp_loASlow,W2.temp_hiAShigh
  5.  
  6. 3.
  7. FROMweatherW1,weatherW2
  8.  
  9. 4.
  10. WHEREW1.temp_lo<W2.temp_lo
  11.  
  12. 5.
  13. ANDW1.temp_hi>W2.temp_hi;
  14.  
  15.  
  16.  
  17.  
  18.  
  19. 聚集函数使用下WHERE HAVING 的基本区别
    WHERE 在分组和聚集计算之前选取输入行(它控制哪些行进入聚集计算),而 HAVING 在分组和聚集之后选取输出行。
  20.  
  21. 因此,WHERE 子句不能包含聚集函数;因为试图用聚集函数判断那些行将要输入给聚集运算是没有意义的。
  22.  
  23. 相反,HAVING 子句总是包含聚集函数。当然,你可以写不使用聚集的 HAVING 子句,但这样做没什么好处,
  24.  
  25. 因为同样的条件可以更有效地用于 WHERE 阶段。
  26. 1.SELECTW1.city,W1.temp_loASlow,W1.temp_hiAShigh,2.W2.city,W2.temp_loASlow,W2.temp_hiAShigh3.FROMweatherW1,weatherW24.WHEREW1.temp_lo<W2.temp_lo5.ANDW1.temp_hi>W2.temp_hi;聚集函数使用下WHERE HAVING 的基本区别
    WHERE 在分组和聚集计算之前选取输入行(它控制哪些行进入聚集计算),而 HAVING 在分组和聚集之后选取输出行。因此,WHERE 子句不能包含聚集函数;因为试图用聚集函数判断那些行将要输入给聚集运算是没有意义的。相反,HAVING 子句总是包含聚集函数。当然,你可以写不使用聚集的 HAVING 子句,但这样做没什么好处,因为同样的条件可以更有效地用于 WHERE 阶段。

猜你在找的Postgre SQL相关文章