[英]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.