SQL 三张表的查询语句
库存表A 结构和数据如下:名称 型号 单位 期初数
螺丝 X-1 件 100
螺栓 X-2 件 100
小刀 X-3 把 100
进库表B 如下:
名称 型号 单位 进库数
螺丝 X-1 件 100
螺栓 X-2 件 500
小刀 X-3 把 100
铜套 A-1 件 120
出库表C 如下:
名称 型号 单位 出存数
螺栓 X-2 件 20
小刀 X-3 把 20
铜套 A-1 件 20
想要得到结果如下:
名称 型号 单位 库存数
螺丝 X-1 件 200
螺栓 X-2 件 580
小刀 X-3 把 180
铜套 A-1 件 100
注:库存数=期初数+进库数-出库数
请教各位SQL语句如何写才能得到上面的结果?谢谢!
应当是进库出库操作都修改库存表,然后清除进库和出库表内容的吧?
查询应当是仅仅针对库存表。 试试:
SELECT A.名称, A.型号, A.单位, (A.期初数 + B.进库数 - C.出存数)AS 库存数 FROM 库存表 A, 进库表 B, 出库表 C WHERE A.名称 = B.名称 AND A.名称 = C.名称 AND A.型号 = B.型号 AND A.型号 = C.型号 建个临时表 AllRecord( 名称,数量),然后把三个表的数据都插入到临时表中去,库存和入库为正数,出库为负数,最后求和就行了
补充:VB , 基础类