1
我有2个表MYSQL LEFT JOIN结果不给
银行表
create table `banks` (
`bank_id` int ,
`bank_name` varchar (150),
`balance` double ,
`b_date` date ,
`delete_state` double
);
insert into `banks` (`bank_id`, `bank_name`, `balance`, `b_date`, `delete_state`) values('1','Emirates NBD','632008','2016-10-10','0');
insert into `banks` (`bank_id`, `bank_name`, `balance`, `b_date`, `delete_state`) values('3','HABIB BANK LIMITED','1134484','2016-10-10','0');
检查表
create table `cheque` (
`ch_id` int ,
`bank_id` int ,
`amount` double ,
`status` int,
`delete_state` double
);
insert into `cheque` (`ch_id`, `bank_id`, `amount`, `status`, `delete_state`) values('4','1','15000','2','0');
insert into `cheque` (`ch_id`, `bank_id`, `amount`, `status`, `delete_state`) values('9','1','250000','1','0');
我的MySQL查询
SELECT bk.*, SUM(amount) AS tot_amount, (bk.balance - SUM(amount)) AS bank_balance FROM banks bk LEFT JOIN cheque ch ON bk.bank_id = ch.bank_id
WHERE ch.status = 1 AND bk.delete_state=0 AND ch.delete_state = 0
我需要加入这两张表格并从银行标签页中获取所有银行的名称即使检查表没有任何条目..
但目前我的查询是给予当检查表只有入口,所以它只返回一个银行结果..请检查,让我知道我在哪里错过了!
云你请解释为什么GROUP BY在这里帮了忙? –
这是工作,谢谢ALOT – Wazan