gpt4 book ai didi

mysql - 我如何在 MySQL 中获得 "get only if this exists"?

转载 作者:行者123 更新时间:2023-11-29 01:24:37 25 4
gpt4 key购买 nike

我的查询...

   SELECT MIN(p.`land_price`) AS `min_price`,
MAX(p.`land_price`) AS `max_price`,
p.`estate`,
m.`file`

FROM `properties` AS `p`
LEFT JOIN `estates` AS `e`
ON p.`estate` = e.`title`

LEFT JOIN `media` AS `m`
ON m.`category` = e.`id`

WHERE p.`estate` IN ("EstateA", "EstateB")
AND p.`land_price` != 0
GROUP BY p.`estate

我想做的是从 media 表(别名为 m)中获取一个项目,其中 name = "Profile",除了只选择它是否存在,否则结果集中的其他人只有空白列。目前,如果我添加该约束,它只会为我提供 name 存在的匹配项。

目前,它只是选择 media 中符合约束的第一个项目。

最佳答案

“WHERE”部分限制来自主表 properties 的结果。在这种情况下,您应该向第二个 LEFT JOIN 的“ON”部分添加另一个约束。

例子:

SELECT MIN(p.`land_price`) AS `min_price`,
MAX(p.`land_price`) AS `max_price`,
p.`estate`,
m.`file`

FROM `properties` AS `p`
LEFT JOIN `estates` AS `e`
ON p.`estate` = e.`title`

LEFT JOIN `media` AS `m`
ON m.`category` = e.`id`
AND m.`name` = 'Profile'

WHERE p.`estate` IN ("EstateA", "EstateB")
AND p.`land_price` != 0
GROUP BY p.`estate

关于mysql - 我如何在 MySQL 中获得 "get only if this exists"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5372457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com