【发布时间】:2020-01-03 13:59:30
【问题描述】:
早安,
我对 MySQL Distinct 有一个小问题。 在我的系统中尝试以下查询:
SELECT DISTINCT `booking_id`, `booking_ticket`, `booking_price`, `bookingcomment_id`, `bookingcomment_message` FROM `mysystem_booking`
LEFT JOIN `mysystem_bookingcomment` ON `mysystem_booking`.`booking_id` = `mysystem_bookingcomment`.`bookingcomment_link`
WHERE `booking_id` = 29791
关键是像 29791 这样的预订添加了许多 cmets。 假设是 10。然后在运行上述查询时,我看到 10 个结果而不是 1 个。
这不是 DISTINCT 设想的工作方式。 我只是想知道是否有任何cmets。如果评论 ID 不为 0,则有评论。当然,我可以将 COUNT(blabla) 添加为 comment_number,但这是一个完全不同的故事。对我来说,现在我只想拥有正确的语法。
【问题讨论】:
-
SELECT DISTINCT ...返回不同的行,查看您的查询,每行可能每行至少有一位不同的数据(可能是评论 ID 和消息),因此显示出来。 -
如果有10个cmets,你想看哪一个?
标签: mysql distinct distinct-values