我正在运行汽车预算项目,需要在mysql下进行表链接过程。由于显示受限,所以我需要从一些表中收集所有需要的信息,以便在摘要表中显示。
有些信息可能会被删除,我需要它显示“ - ”而不是空单元格。
这是我的表:
car_db
c_id c_brand c_ver c_buy_date
--------------------------------------
1 toyota camry 2013-04-20
2 nissan teana 2013-04-15
3 toyota soluna 2013-04-10
4 honda accord 2013-04-10
car_bal
cb_id cb_cid cb_cost c_repair
--------------------------------------
1 4 150000 20000
2 3 100000 15500
*而cb_cid = car_db.c_id
当显示car_db表时,我预计:
Car ID Brand/Model Bought On Cost Repair Total Cost
1 Toyota Camry 2013-04-20 - - -
2 Nissan Teana 2013-04-15 - - -
3 Toyota Soluna 2013-04-10 100000 15500 115500
4 Honda Accord 2013-04-10 150000 20000 170000
所以我写道:
select
concat(car_db.c_brand,'-',car_db.c_ver) as brand,
car_db.c_buy_date as buy_date,
car_bal.cb_cost as cost1,
car_bal.cb_repair as repair,
(sum(car_bal.cb_cost) + sum(car_bal.cb_repart)) as sum
from car_db
inner join car_bal on car_db.cb_id=car_bal.cb_cid
order by car_db.c_id desc
我测试了这些代码有几个错误。所以我需要一些建议:
答案 0 :(得分:1)
ifnull(sum(car_bal.cb_cost),'-')
答案 1 :(得分:0)
怎么样:
ALTER TABLE tablename
-> MODIFY colname NOT NULL DEFAULT '-';