我正在研究分类帐,我的php代码需要查询以标识其借方金额还是贷方金额。
SELECT jobber,
IF(Pay_type='Payable', amount AS credit_amount, amount AS debit_amount)
FROM Jobber_payments
我也尝试过这种方法,但是对我不起作用。以上查询是否有可能。
SELECT jobber, IF(Pay_type='Payable', credit_amount, debit_amount) AS amount_type
amount AS (SELECT amount_type)
FROM Jobber_payments
如果condition(Pay_type ='Payable')为true,它将通过
credit_amount将是字段名称或列名称,金额值为5000
其他 debit_amount将是字段名称或列名称,金额值为5000
答案 0 :(得分:0)
您不能在列中使用2个不同的名称(别名)。
您可以做的是两列,每种情况一列:
SELECT
jobber,
case when Pay_type='Payable' then amount end AS credit_amount,
case when Pay_type<>'Payable' then amount end AS debit_amount
FROM Jobber_payments
在这种情况下,有2列,其中一列将为null,另一列将包含一个值。
答案 1 :(得分:-2)
以下详细说明了IF条件;
IF(condition, value_if_true, value_if_false)
检查下面的链接,他们已经清楚地解释了IF的用法。