gpt4 book ai didi

mysql - 在 MYSQL 查询中使用 If

转载 作者:行者123 更新时间:2023-11-29 05:33:09 26 4
gpt4 key购买 nike

您好,我目前正在编写一些代码,在从数据库中检索结果之前需要一个 if。

情况是,如果 interacterID 不为 NULL,则按它进行过滤,见下文

SELECT *
FROM status
WHERE type != "3"
AND userID = "'.$userID.'"
AND
(
interacterID IN ( #IF interacterID is null I want to skip this AND
SELECT userID
FROM userFriends
WHERE (
userFriends.userID = "'.$currentUserID.'"
OR userFriends.interacterID = "'.$currentUserID.'"
)
AND status = "1"
)
)
ORDER BY addedDate DESC
LIMIT 1

在此先感谢您的帮助。

最佳答案

如果我没看错,我不确定您是否需要此处的 IF ( which can be done )。一个简单的 IS NULL 和 OR 可以用于这两种情况:

SELECT *
FROM status
WHERE type != "3"
AND userID = "'.$userID.'"
AND
(
interacterID IS NULL OR interacterID IN (
SELECT userID
FROM userFriends
WHERE (
userFriends.userID = "'.$currentUserID.'"
OR userFriends.interacterID = "'.$currentUserID.'"
)
AND status = "1"
)
)
ORDER BY addedDate DESC
LIMIT 1

关于mysql - 在 MYSQL 查询中使用 If,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13009709/

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