[英]select where (column defined as) or count(*) > 50 something like that
這個mysql查詢給了我未知的列錯誤
SELECT count(vs.no) AS no_of_vocabs, level, owner_no FROM vocab_stats as vs
LEFT JOIN (SELECT no, level FROM mst_words) mw ON mw.no = vs.vocab_no
WHERE owner_no = 6 AND correct > 0 AND vs.no_of_vocabs > 50
group by owner_no, level
我怎樣才能解決這個問題?
您應該使用HAVING
(請參閱SELECT上的文檔 )
SELECT COUNT(vs.no), level, owner_no FROM vocab_stats as vs
LEFT JOIN (SELECT no, level FROM mst_words) mw ON mw.no = vs.vocab_no
WHERE owner_no = 6 AND correct > 0
GROUP BY owner_no, level
HAVING COUNT(vs.no) > 50
我想您所定義的no_of_vocabs
未知列是vs.no_of_vocabs
,但它不是vs
/ vocab_stats
表的一部分,它只是查詢的一部分。 從vs.no_of_vocabs
刪除vs
,應該修復它。
如果這不是問題,我們將需要查看錯誤消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.