我已经做了以下查询,但是当我尝试选择多一列时,我没有得到任何结果。我只是不知道如何选择该列(if语句是有问题的)。MySQL选择列,如果它存在
东西是sub_acc
列中的cash_payment_detail
表也可以是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`
大胆(**)列不会在查询中显示。 – Roger
哎呦抱歉,它的**,if语句 – user1361430
1)你必须使用'OUTER JOIN'例如'LEFT JOIN' 2)不要混合使用逗号样式和ANSI样式'JOIN's – peterm