Sql 如何联接两个select语句
我有四张桌子。我独立编写了两个查询,这些查询正在运行。但是我想做的是连接这两个查询并生成一个结果 这是我的密码 问题#1 问题2:Sql 如何联接两个select语句,sql,sql-server,date,Sql,Sql Server,Date,我有四张桌子。我独立编写了两个查询,这些查询正在运行。但是我想做的是连接这两个查询并生成一个结果 这是我的密码 问题#1 问题2: batch\u no对于loadinglist\u fabrics\u items表和packingslist\u fabrics\u items表是唯一的 查询结果1 查询结果2 预期产量 像这样尝试,我假设您使用的是SQL Server SELECT A.* ,B.* FROM ( SELECT pm.DATE ,pm.cus
batch\u no
对于loadinglist\u fabrics\u items
表和packingslist\u fabrics\u items
表是唯一的
查询结果1
查询结果2
预期产量
像这样尝试,我假设您使用的是SQL Server
SELECT A.*
,B.*
FROM (
SELECT pm.DATE
,pm.customer
,pm.gp_no AS Gatepass_Num
,pf.style
,pf.color
,pf.batch_no
,COUNT(pf.roll_no) AS Roll_QTY
,SUM(pf.meter) AS QTY
FROM packinglists_fabrics_items pf
,packinglists_main pm
WHERE pf.p_id = pm.id
AND pm.DATE BETWEEN {DateR
,RANGE1}
AND {DateR
,RANGE2}
AND pm.customer_id = "{factory,false}"
GROUP BY pm.DATE
,pm.gp_no
,pf.style
,pf.color
,pf.batch_no
) A
INNER JOIN (
SELECT lo.DATE
,lo.customer_name
,flo.style
,flo.color
,flo.batch_no
,COUNT(flo.rowno) AS Roll_QTY
,SUM(flo.meter) AS QTY_Meter
FROM loadinglists_fabrics_items flo
,loadinglists lo
WHERE flo.p_id = lo.id
AND lo.DATE BETWEEN {DateR
,RANGE1}
AND {DateR
,RANGE2}
AND lo.customer_id = "{factory,false}"
GROUP BY lo.DATE
,flo.style
,flo.color
,flo.batch_no
) B ON A.batch_no = B.batch_no
尝试这样做,我假设您使用的是SQL Server
SELECT A.*
,B.*
FROM (
SELECT pm.DATE
,pm.customer
,pm.gp_no AS Gatepass_Num
,pf.style
,pf.color
,pf.batch_no
,COUNT(pf.roll_no) AS Roll_QTY
,SUM(pf.meter) AS QTY
FROM packinglists_fabrics_items pf
,packinglists_main pm
WHERE pf.p_id = pm.id
AND pm.DATE BETWEEN {DateR
,RANGE1}
AND {DateR
,RANGE2}
AND pm.customer_id = "{factory,false}"
GROUP BY pm.DATE
,pm.gp_no
,pf.style
,pf.color
,pf.batch_no
) A
INNER JOIN (
SELECT lo.DATE
,lo.customer_name
,flo.style
,flo.color
,flo.batch_no
,COUNT(flo.rowno) AS Roll_QTY
,SUM(flo.meter) AS QTY_Meter
FROM loadinglists_fabrics_items flo
,loadinglists lo
WHERE flo.p_id = lo.id
AND lo.DATE BETWEEN {DateR
,RANGE1}
AND {DateR
,RANGE2}
AND lo.customer_id = "{factory,false}"
GROUP BY lo.DATE
,flo.style
,flo.color
,flo.batch_no
) B ON A.batch_no = B.batch_no
MySQL还是MS SQL Server?不标记未涉及的产品。如何组合?显示的是一些示例数据,以及组合结果!尝试设置查询的格式。编辑、标记代码,单击
{}
。始终简化代码。您不必包含查询的每个字段。提出问题,获得想法和解决方案,应用于你的问题。@jarlh我已经用一些输出更新了问题。看看MySQL或MS SQL Server?不标记未涉及的产品。如何组合?显示的是一些示例数据,以及组合结果!尝试设置查询的格式。编辑、标记代码,单击{}
。始终简化代码。您不必包含查询的每个字段。提出问题,获得想法和解决方案,应用于你的问题。@jarlh我已经用一些输出更新了问题。看一看
SELECT A.*
,B.*
FROM (
SELECT pm.DATE
,pm.customer
,pm.gp_no AS Gatepass_Num
,pf.style
,pf.color
,pf.batch_no
,COUNT(pf.roll_no) AS Roll_QTY
,SUM(pf.meter) AS QTY
FROM packinglists_fabrics_items pf
,packinglists_main pm
WHERE pf.p_id = pm.id
AND pm.DATE BETWEEN {DateR
,RANGE1}
AND {DateR
,RANGE2}
AND pm.customer_id = "{factory,false}"
GROUP BY pm.DATE
,pm.gp_no
,pf.style
,pf.color
,pf.batch_no
) A
INNER JOIN (
SELECT lo.DATE
,lo.customer_name
,flo.style
,flo.color
,flo.batch_no
,COUNT(flo.rowno) AS Roll_QTY
,SUM(flo.meter) AS QTY_Meter
FROM loadinglists_fabrics_items flo
,loadinglists lo
WHERE flo.p_id = lo.id
AND lo.DATE BETWEEN {DateR
,RANGE1}
AND {DateR
,RANGE2}
AND lo.customer_id = "{factory,false}"
GROUP BY lo.DATE
,flo.style
,flo.color
,flo.batch_no
) B ON A.batch_no = B.batch_no