簡體   English   中英

SQL MAX與WHERE子句一起使用

[英]SQL MAX in conjunction with WHERE clause

我需要從mysql表的一個特定列中找到最大值,其中另一列的值等同於某值。 但是,隨着我使用的查詢,我繼續獲得顯示的消息和SQL錯誤。 我的查詢是aS如下:

SELECT MAX(message_id) AS top_message HAVING(child_id) = '".$message_id[$i]."'

有什么建議么?

您還缺少表名:

SELECT MAX(message_id) AS top_message FROM tablename WHERE child_id = '".$message_id[$i]."'

您應該使用WHERE而不是HAVING子句:

SELECT MAX(message_id) AS top_message 
FROM tablename 
WHERE child_id = '".$message_id[$i]."'

當您有聚合條件時,僅使用HAVING子句。

您需要一個from子句和where子句。 Haven子句用於組過濾器。 您沒有group by子句,因此沒有理由編寫hading子句。 如果要從中選擇的表稱為“ MyTable”,則查詢如下:

SELECT MAX(message_id) AS top_message
FROM MyTable
WHERE child_id = '".$message_id[$i]."'

注意,不需要child_id周圍的括號。 請閱讀SQL和MySQL教程以獲取更多信息,您的生活將變得更加輕松。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM