1
我從四個不同的表中獲取數據。這是我做的事:在mysql中過濾沒有重複項
select value_split.id,
count(invoice_request.id) as counts,
GROUP_CONCAT(`category`.`category_name`) as `category_name`
from value_split
left join invoice_request
on invoice_request.id = value_split.id
and MONTH(invoice_request.from_date) = '05'
and YEAR(invoice_request.from_date) = '2016'
and invoice_request.status = '1'
left join `category_value` on value_split.id = category_value.id
left join `category` on category_value.category_id = category.category_id
where MONTH(value_split.date) = '05'
and YEAR(value_split.date) = '2016'
group by value_split.id, value_split.date
limit 0, 2147483647
預期的答案是:
id|counts|category_name
1 | 1 | service, drop
2 | 2 | drop
3 | 1 | service
但是,我得到的是:
id|counts|category_name
1 | 5 | service, drop
2 | 4 | drop
3 | 5 | service
如果我刪除線10和11,我得到的正確答案。但是,如果我包括他們,我會得到錯誤的。但是,我也想展示它。那麼,我該怎麼做才能獲得正確的輸出?這有什麼問題?
我嘗試使用它,但我在第二列有1對所有的ID。 – SSS
你需要什麼?爲'DISTINCT'使用正確的表達式。 – mnv
我在兩個地方都使用過它,即在第2行以及第3行。但是,我得到了同樣的結果。 – SSS