联合加入的多个表未给出确切结果

时间:2019-04-05 05:53:37

标签: mysql sql

我的库存系统中有很多表格,例如产品销售,产品购买,员工薪水,办公室/商店费用。 现在,我想在一个表中显示所有表活动。因此,我使用的是联合查询,因此,我可以以表格格式打印所有其他表格活动。我将其命名为Cash_Report,例如商店Tally书。

 SELECT `selldate`, `customerid`, `payment_taka`, `token` FROM `sell` WHERE `token` = 's_Cash'
 UNION
 SELECT `recievedate`, `cusotmer_id`, `amounts`, `bycashcheque` FROM `recevecollection` WHERE `bycashcheque` = 'rac_Cash' 
UNION 
SELECT `pay_date`, `sup_id`, `amnts`, `status` FROM `supplierpayment` WHERE `status`='pts_Cash' 
UNION 
SELECT `expiredate`, `customerid`, `amount`, `fromtable` FROM `cheque` WHERE `approve`='1' .....and goes on and on. 

现在的主要问题是我已经实现了想要实现的目标。但是突然间我注意到了一个问题。 从sell表中未获取所有数据库条目。但是,当我在sell表上运行完全相同的查询时,它可以正常运行。我只是想知道union出了什么问题,尽管我使用union all尝试了这段代码,但是在这种情况下似乎没有任何效果。

推荐 我只是想知道是否有人可以告诉您这项工作是如何完成的。如何将所有表放在一起并通过查询将它们显示在单个表中。我只是想知道程序。

enter image description here

联合查询的结果 enter image description here

没有union的图像

正如我在图片上用红色标记提到的那样,通过union查询,我得到12行,应该是16行。

1 个答案:

答案 0 :(得分:1)

结果集中的列名通常等于UNION中第一个SELECT语句中的列名。

UNION运算符默认情况下仅选择不同的值。要允许重复的值,请使用UNION ALL

检查以下链接

全部联盟

https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_union_all

UINON

https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_union