mysql数据库关于通过查询语句出来的结果然后让它与另一个查询出来的表进行下一步动作
这里,我想实现的是:让表1中的查询结果与表2中的查询结果,进行一个运算(根据goosId,表1对应表2中的goosId,表1的number列去乘以表2中的sum(quantity)列,最后显示出运算后的列,即goosId列,partsId列,number*sum(quantity)列),各位前辈高手解决下,谢谢了。如下图

表1:
图片说明
表2:
图片说明

5个回答

放list里两次查出来根据id比对相乘,减少数据库运算

chengaezakmi
chengaezakmi 这个可以试一下,thank you
接近 3 年之前 回复

利用子查询即可。
select gs.goodsid, gs.partsid, gs.number * dt.qsum as mysum from

(
select goodsid, number, partsid from goodsstructure as gs
join (selet goodsid, sum(quantity) as qsum from orderdetails group by goodsid) as dt
on gs.goodsid = dt.goodsid)
)

可以尝试子查询,但是这种操作在代码中基本是见不到的,太消耗时间,可以先进行查询在代码中进行运算操作

你这两个表名都叫orderdetails?

可以在变异中添加一个列,然后通过联表查询得到number*sum 的值赋给添加的列不就行了,

chengaezakmi
chengaezakmi 变异?我搜不到这块的内容,确定是这个吗?
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问