我是 SQL 新手,似乎无法理解仅在语句的一部分上使用 WHERE
子句。例如,(基本上都是这样写的)
SELECT Forename, Surname, Organisation
FROM Client table
SELECT Renewal day AND Renewal month AS Renewal date
FROM Client table
WHERE Renewal day <> 0
我需要将这一切都作为一个语句,而且这样 where 子句就不会影响 Forename、Surname 和 Organization 字段。例如,该表将充满客户,但续订日期列将仅显示有客户的日期。谢谢
最佳答案
SELECT Forename, Surname, Organisation, IF(Renewal day <> 0, Renewal day AND Renewal month, '') as Renewal
FROM Client table
应该可以解决问题。这不会立即运行,因为 IF 中的 AND 语句不受欢迎,但您可以使用:
IF(Renewal day <> 0, CONCAT(Renewal day,Renewal month), '') as Renewal
或
IF(Renewal day <> 0, Renewal day) as renewDay, IF(Renewal day <> 0, Renewal month, '') as renewMonth
有 2 个独立的字段。
关于mysql - 简单的 select, where 语句有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16196302/