[英]mysql inner join with count query
我有以下查詢以提取屬性。 屬性具有多個單位。 我不知道如何拉至少1個單位的屬性。 單元通過具有相同的“團隊”連接到屬性。 “團隊”是varchar(例如“ jkdgsl”)。 有什么建議么?
SELECT DISTINCT Properties.id, Properties.title, Properties.team
FROM Properties
INNER JOIN Units ON Units.team = Properties.team
AND Units.rates != '0'
AND Properties.deleted = '0000-00-00 00:00:00'
AND Properties.zip_code
IN (
'77808', '77845'
)
AND Properties.public = '1'
ORDER BY FIELD( Properties.zip_code, '77808', '77845' )
LIMIT 0 , 30
我認為您已經按照內部聯接的性質進行了此操作(即選擇具有至少一個單位的屬性)。
我同意@Razvan如果您還想要單位計數,請使用:
SELECT DISTINCT Properties.id, Properties.title, Properties.team, COUNT(Units.<em>someOTHERcolumn</em>) FROM Properties INNER JOIN Units ON Units.team = Properties.team AND Units.rates != '0' AND Properties.deleted = '0000-00-00 00:00:00' AND Properties.zip_code IN ( '77808', '77845' ) AND Properties.public = '1' GROUP BY Properties.id ORDER BY FIELD( Properties.zip_code, '77808', '77845' ) LIMIT 0 , 30
如果只是一個或多個,則可以使用COALESCE
。
WHERE COALESCE( Properties.id, Properties.title, Properties.team ) IS NOT NULL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.