gpt4 book ai didi

MYSQL select if exists (来自不同的表)

转载 作者:可可西里 更新时间:2023-11-01 08:34:05 24 4
gpt4 key购买 nike

我目前有一个搜索功能,我需要它从不同的表中返回值(如果该值存在)

SELECT crm.lead_id, 
crm.id,
url,
contact,
info,
status_id,
added,
last_edited,
callback_date,
user.user,
status.status,
crm_updates.status_info
FROM crm,
user,
status,
crm_updates
WHERE (url LIKE '%$search%'
OR contact LIKE '%$search%'
OR info LIKE '%$search%'
OR status_id LIKE '%$search%'
OR added LIKE '%$search%'
OR last_edited LIKE '%$search%'
OR callback_date LIKE '%$search%'
OR user.user LIKE '%$search%')
AND crm.lead_id = user.id
AND status.id = crm.status_id
AND crm_updates.crm_id = crm.id

我需要来自 crm_updates 的 status_info,它们目前通过 crm_id(在 crm_updates 中)和 id(在 crm 中)连接

现在只选择具有 status_info 的值。我需要选择所有值并包含 status_info(如果存在)。

最佳答案

SELECT crm.lead_id, crm.id, url, contact, info, status_id, added, last_edited, callback_date, user.user, status.status, crm_updates.status_info
FROM crm
INNER JOIN user
ON crm.lead_id = user.id
INNER JOIN status
ON crm.status_id = status.id
LEFT JOIN crm_updates
ON crm.id = crm_updates.crm_id
WHERE url LIKE '%$search%'
OR contact LIKE '%$search%'
OR info LIKE '%$search%'
OR status_id LIKE '%$search%'
OR added LIKE '%$search%'
OR last_edited LIKE '%$search%'
OR callback_date LIKE '%$search%'
OR user.user LIKE '%$search%'

使用“LEFT JOIN crm_updates”:因此如果没有 crm_updates 的记录,将返回 NULL。

提示:不要将连接子句放在查询的 where 部分

关于MYSQL select if exists (来自不同的表),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18400856/

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