我有一个名为call_charges
的表,里面有以下数据。 自我加入mysql复杂查询
我需要获得所有未付款的付款,其付款重试也未付。
具有transaction_bid
非空和is_paid
0,将返回记录与id
6和10 但是id
6即行有具有支付重试(id
12,与retry_id
6和is_paid
1),所以用id
6行不应该在结果中出现。
我曾尝试用:
SELECT `call_charges`.* FROM `call_charges` LEFT JOIN `call_charges` AS
`retries_call_charges` ON `retries_call_charges`.`retry_id` = `call_charges`.`id`
WHERE `call_charges`.`is_paid` = 0 AND (`call_charges`.`transaction_bid` IS NOT NULL
AND `call_charges`.`retry_id` IS NULL)
但它与id
6和10
感谢提前返回两排。
选择'call_charges'。* FROM'call_charges' LEFT JOIN'call_charges' AS 'retries_call_charges' ON'retries_call_charges'.'retry_id' ='call_charges'.'id'运行此查询,看看你会得到什么,然后创建你的WHERE基于数据。 –
嘿,你想要第10个只... – jmail
是的,只有第10个。 – shweta