如何使用mysql查询的IF条件?
我正在处理分类账,我的php代码需要查询以确定其借方金额还是贷方金额如何使用mysql查询的IF条件?,mysql,if-statement,Mysql,If Statement,我正在处理分类账,我的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 amoun
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
如果条件(Pay_type='payment')为真,则它将通过
贷方金额将是字段名或列名以及金额值5000
否则
借方金额将是字段名或列名和金额值5000,如果条件在下面详细说明
IF(condition, value_if_true, value_if_false)
检查下面的链接,他们已经清楚地解释了IF的用法
一列不能有两个不同的名称(别名)
您可以做的是有两列,每种情况一列:
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
选择
批发商,
当Pay_type='Payment'时,则金额以贷方金额结束,
当支付类型为“应付”时,金额以借方金额结尾
从批发商处付款
在这种情况下,有两列,其中一列为null,另一列包含一个值。不清楚。请在此处包含您希望看到的确切输出。使用别名可以为查询的第二列指定名称。每个列只能有一个名称。您要做的是为不允许的每一行的第2列指定不同的名称。然后如何处理,知道吗?我的代码只接受贷记金额或贷记金额,而不接受两者:(然后您保持原样:1列名称
金额,并按类型区分。