【发布时间】:2014-01-11 10:20:33
【问题描述】:
我进行了以下查询,但是当我尝试再选择一列时,我没有得到任何结果。我只是不知道如何选择该列(if 语句是有问题的)。
问题是cash_payment_detail 表中的sub_acc 列也可以是null。任何帮助都意义重大。请注意,我还在学习中。
SELECT
LPAD(cash_payments_detail.`control_acc`,5,0) AS Control_Account,
CAccountDescription As Control_Account_Name,
LPAD(cash_payments_detail.`sub_acc`,4,0) AS Sub_Account,
**if (coasub.`SAccountNo` = cash_payments_detail.`sub_acc`, coasub.`SAccountDescription`," ") As Sub_Account_Name**
FROM
coasub, coacontrol, `cash_payments_detail` cash_payments_detail INNER JOIN `cash_payments` cash_payments ON cash_payments_detail.`cpvno` = cash_payments.`cpvno`
WHERE
control_acc = coacontrol.`CAccountNo`
【问题讨论】:
-
粗体 (**) 列未显示在您的查询中。
-
哎呀对不起,它带有**,if语句的那个
-
1) 你必须使用
OUTER JOIN例如LEFT JOIN2) 不要混合逗号样式和ANSI样式JOINs -
感谢您的指导,无法与您一起解决。
标签: mysql if-statement exists