mysql一对多关联查询,怎么显示成一行对多行的样式,sql怎么写

可以用sql直接实现下图的任意一种形式吗图片说明

6个回答

比如 A 表 和 B 表 关联都是id
A 表 = 开票金额 , id
B 表 = 计划收入 , id

 SELECT A.*,B.计划收入 From A LEFT JOIN B ON A.id = B.id

你描述的有点简陋,按你说的可以显示成第二种,但计划收入一行全部为750

第一种那样显示没见过,,关系型数据库,,行列要求比较严格,,多行不可行

第二个可以

要是题主想在网页或者应用程序中将表格显示那种格式,很容易可以实现,,,
仅关系型数据库,第一种没见过

比如 A 表 和 B 表 关联都是id
B 表 = 开票金额 , id
A 表 = 计划收入 , id

SELECT A.*,B.计划收入 From A RIGHT JOIN B ON A.id = B.id

看到第一种情况,只能说题主你想多了

计划收入那个,最后结果应该是每行都是750,现在模拟一下你的描述:
假设a表有id属性,计划收入(plainget),
b表有id属性,开票金额,money,与a表外键关联aid属性
这时候SQL:
select a.id,a.plainget,b.money from b left join a on a.id=b.aid

smile_lg
smile_lg 因为一个计划收入对应多个开票,查询出来计划收入每一行都是750,这样不方便导出excel后统计,所以要求只显示一行
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐