sql語句中where一定要放在group by 之前
sql語句中where一定要放在group by 之前
分組查詢出來的結果是根據第一個被查詢出來的資料結果作為結果的。
所以如果在查詢的時候需要加入條件,那麼就一定要在分組之前把條件加進去。
select litigant_name,count(1) as defendant_judgedoc_cnt from df1 where litigant_type = '被告' group by litigant_name
如果where寫在group by之後,會報如下錯誤:
[192.168.31.10] out: select litigant_name,count(1) as defendant_judgedoc_cnt from df1 group by litigant_name where litigant_type = '被告'""")
[192.168.31.10] out: File "/opt/local/spark-2.0.1-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/sql/session.py", line 543, in sql
[192.168.31.10] out: File "/opt/local/spark-2.0.1-bin-hadoop2.7/python/lib/py4j-0.10.3-src.zip/py4j/java_gateway.py", line 1133, in __call__
[192.168.31.10] out: File "/opt/local/spark-2.0.1-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/sql/utils.py", line 73, in deco
[192.168.31.10] out: pyspark.sql.utils.ParseException: u"\nmismatched input 'where' expecting {<EOF>, ',', '.', '[', 'GROUPING', 'ORDER', 'HAVING', 'LIMIT', 'OR', 'AND', 'IN', NOT, 'BETWEEN', 'LIKE', RLIKE, 'IS', 'WINDOW', 'WITH', 'UNION', 'EXCEPT', 'INTERSECT', EQ, '<=>', '<>', '!=', '<', LTE, '>', GTE, '+', '-', '*', '/', '%', 'DIV', '&', '|', '^', 'SORT', 'CLUSTER', 'DISTRIBUTE'}(line 2, pos 100)\n\n== SQL ==\n\n select litigant_name,count(1) as defendant_judgedoc_cnt from df1 group by litigant_name where litigant_type = '\u88ab\u544a'\n----------------------------------------------------------------------------------------------------^^^\n"
相關文章
- Python 提取出SQL語句中Where的值的方法PythonSQL
- SQL語句中 left join 後用 on 還是 where,區別大SQL
- SQL中 where 子句和having子句中的區別SQL
- sql語句中JOIN ON 的使用SQL
- sql語句中#{}和${}的區別SQL
- SQL語句中exists和in的區別SQL
- SQL語句中not in 和not exist的區別SQL
- MyBatis在SQL語句中取list的大小MyBatisSQL
- [20180928]避免表示式在sql語句中.txtSQL
- 【轉】LINQ to SQL語句(1)之WhereSQL
- MyBatis的使用三(在sql語句中傳值)MyBatisSQL
- 【SQL】Oracle SQL join on語句and和where使用區別SQLOracle
- Oracle sql 語句中帶有特殊的字元處理OracleSQL字元
- 如何自動填充SQL語句中的公共欄位SQL
- SQL語句中的AND和OR執行順序問題SQL
- SQL語句中聚合函式忽略NULL值的總結SQL函式Null
- [20181029]避免表示式在sql語句中(10g).txtSQL
- 將第一個 sql 語句中的結果作為第二個 sql 的引數值SQL
- SQL語句中不同的連線JOIN及SQL中join的各種用法SQL
- 資料庫SQL語句中關於explain關鍵字的用法資料庫SQLAI
- [20181030]避免表示式在sql語句中(10g)(補充).txtSQL
- 表的連線是指在一個SQL語句中通過表與表之間的關連SQL
- 如何剔掉 sql 語句中的尾巴,我用 C# 苦思了五種辦法SQLC#
- [AlwaysOn] 建立SQL Server高可用性組T-SQL語法:AVAILABILITY GROUP ON子句SQLServerAI
- SQL 優先順序join>whereSQL
- SQL中where和on的區別SQL
- Python學習方法(學python之前一定要看,少走彎路)Python
- 學習程式設計之前一定要學習數學嗎? - CACM程式設計ACM
- PostgreSQL DBA(186) - SQL Group BySQL
- 什麼是SQL 語句中相關子查詢與非相關子查詢SQL
- Mybatis 裡對映檔案的動態 SQL 語句,實現if,where,foreache的SQL語句動態拼接查詢MyBatisSQL
- Ruby 中的語句中斷和返回
- ABAP 動態where語句
- SQL Server中GROUP BY(連結)SQLServer
- sql case when, Exist ,group by ,聚合SQL
- [AlwaysOn] 建立SQL Server高可用性組T-SQL語法:group_name引數SQLServer
- 學習 VR 開發之前,這 7 個容易混淆的概念一定要理清VR
- 2.7.6.2.1 ALTER SYSTEM SET語句中的SCOPE子句