大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

mysql两个表怎么相减 mysql相邻两行相减

MYSQL两表相减问题

参考一下:

成都创新互联成立与2013年,是专业互联网技术服务公司,拥有项目成都做网站、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元薛城做网站,已为上家服务,为薛城各地企业和个人服务,联系电话:18982081108

有两表,hctotaltmp(总表),hctotalout(出库表),字段分别为catalogue,hc,number。现已实现php前台显示出剩余的各数量。但是如何同时显示在总表中,但未出库的数量。

$sql = "SELECT hctotaltmp.catalogue,hctotaltmp.hc, hctotaltmp.number - ifnull(hctotalout.number, 0)

FROM

hctotalout

LEFT JOIN hctotaltmp ON hctotalout.hc = hctotaltmp.hc

GROUP BY

hc DESC

ORDER BY

catalogue DESC ";

这样的话,只能存在于hctotalout表里面的数据才会显示出来。我想把所有的都显示出来,没出库的数量就显示为总表中的数量,出库的话就是总表数量减出库表对应字段的数量。

MYSQL怎么实现两个表的字段值相减 求这样的SQL语句

delimiter //

create trigger trigger1 after update on B for each row

begin

declare sl int;

set sl=NEW.退货数量;

update A set 数量=数量-sl;

end //

MYSQL怎么实现两个表相减 求这样的SQL语句

UPDATE

A

SET

A.数量 = A.数量 - B.退货数量

FROM

A JOIN B

ON (A.物料编号 = B.物料编号);

上面这种2表关联更新写法

对于 A 表 与 B 表, 是 1对1 的情况下, 是没有问题的。

对于 A 表与 B 表, 是 1对多的情况下, 就没有测试过了。

MYSQL怎么实现两个表求和相减 求这样的SQL语句

select Aa.Aamount -B.stock , B.bookid from (select sum(A.amount) as Aamount , A.bookid from group by A.bookid ) Aa inner join B on Aa.bookid =B.bookid

上述用的是sql2000 的语法。但都类似。

mysql 两个查询结果运算减

工具/材料:Management Studio。

1、首先在桌面上,点击“Management Studio”图标。

2、之后在该界面中,点击左上角“新建查询”选项。

3、接着在该界面中,输入两个查询结果运算减的sql语句“SELECT myLGMaterialStock.CountA - myXGMaterialStock.InitCountA FROM myLGMaterialStock left join myXGMaterialStock on myLGMaterialStock.ID= myXGMaterialStock.ID”。

4、然后在该界面中,点击左上方“执行”按钮。

5、最后在该界面中,显示两个查询结果运算减结果。

在mysql中如何实现两个表相减

oracle:

[TEST1@orcl#19-4月 -10] SQLselect * from a;

SNO CON

---------- ----------

1 1

1 2

1 3

2 1

2 2

2 3

已选择6行。

[TEST1@orcl#19-4月 -10] SQLselect * from b;

SNO CON

---------- ----------

1 1

1 2

2 2

2 3

[TEST1@orcl#19-4月 -10] SQLselect * from a minus select * from b;

SNO CON

---------- ----------

1 3

2 1

mmysql:

select * from a where (sno,con) not in (select sno,con from b);

看看这个 或许对你有所帮助


标题名称:mysql两个表怎么相减 mysql相邻两行相减
当前地址:http://dzwzjz.com/article/hhpshd.html
在线咨询
服务热线
服务热线:028-86922220
TOP