gpt4 book ai didi

MySQL 条件列响应

转载 作者:行者123 更新时间:2023-11-28 23:52:09 25 4
gpt4 key购买 nike

我正在寻找基于 if users.address_privacy is = 1 的条件 MySQL 响应。

如果 users.address_privacy = 1 那么我只想返回 user_address.cityuser_address.state

如果 users.address_privacy = 0 那么我想返回 user_address.*

这是我要应用 if/else 功能的查询的基本设置。

SELECT items.*, user_address.*, users.address_privacy
FROM items
INNER JOIN users ON (users.user_id = items.user_id)
INNER JOIN user_address ON (user_address.user_id = items.user_id)

这是可能的还是我必须在查询后处理它?<​​/p>

谢谢

最佳答案

除了 citystate 之外,您从未给过我们 user_address 表中的其他列,所以我在回答中假设有两个更多字段称为 column1column2。您可以使用 CASE 语句根据隐私设置有条件地显示或隐藏某些列。可以添加额外的 CASE 语句以覆盖 user_address 表中的所有列。

SELECT items.*,
CASE WHEN users.address_privacy = 0 THEN user_address.column1 ELSE '' END,
CASE WHEN users.address_privacy = 0 THEN user_address.column2 ELSE '' END,
users_address.city,
users_address.state,
users.address_privacy
FROM items
INNER JOIN users ON (users.user_id = items.user_id)
INNER JOIN user_address ON (user_address.user_id = items.user_id)

关于MySQL 条件列响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32448561/

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