สอบถามเกี่ยวกับการจอย ตาราง 3ตาราง รบกวนช่วยแนะนำทีครับ
ใช่ที่ต้องการไหมครับ ลองเอาผลลัพธ์มาให้ดูหน่อยนะครับ
Code (MSSQL)
SELECT *
FROM Table1 a
FULL JOIN Table2 b ON (a.Username=b.Username)
FULL JOIN Table3 c ON (a.Username=c.Username)
Date :
2018-03-13 14:43:05
By :
nPointXer
คงลำบากครับ ใช้ code ภาษาหลักดำเนินการแทน ดีกว่าครับ
ไล่เปรียบเทียบไปทีละ record
ปล. เพราะคุณไม่มีลำดับที่ของข้อมูลจะนำมาอ้างอิง ถ้ามีลำดับที่ก็ยังพอนำมาใช้อ้างอิงในการคิวรี่ได้
ประวัติการแก้ไข 2018-03-13 15:55:00
Date :
2018-03-13 15:51:57
By :
Chaidhanan
Code (SQL)
DECLARE @PODT TABLE (JobNo VARCHAR(1), PartNo VARCHAR(1), Cost INT)
DECLARE @ISDT TABLE (JobNo VARCHAR(1), PartNo VARCHAR(1), Cost INT)
INSERT INTO @PODT VALUES ('a', N'ก', 1), ('a', N'ข', 2), ('a', N'ค', 3)
INSERT INTO @ISDT VALUES ('a', N'ก', 1), ('a', N'ข', 2), ('a', 'ง', 4), ('a', N'ค', 3)
;WITH PODT
AS (
SELECT *, ROW_NUMBER() OVER (ORDER BY (SELECT 1)
) aN, sys.fn_PhysLocFormatter (%%physloc%%) AS [Fuck a]
FROM @PODT
)
, ISDT
AS (
SELECT *, ROW_NUMBER() OVER (ORDER BY (SELECT 1)
) bN, sys.fn_PhysLocFormatter (%%physloc%%) AS [Fuck b]
FROM @ISDT
)
SELECT *
FROM PODT
FULL JOIN ISDT ON PODT.aN = ISDT.bN
--WHERE (PODT.JobNo = 'a' OR ISDT.JobNo = 'a')
Date :
2018-03-13 20:19:37
By :
หน้าฮี
ขอเสริมครับถ้าอยากรู้ว่ามาจาก table ไหน ลองใส่ '1' as TempField , '2' , '3' ให้กับทุก Table ดูครับ
Date :
2018-03-13 22:28:36
By :
adminliver
Code (SQL)
select *
--,A.[JobNo],B.[JobNo]
from(
SELECT [JobNo],[PartNo],row_number() over (order by Cost) as row_num
FROM [ISDT])A
full join
(SELECT [JobNo],[PartNo],row_number() over (order by Cost) as row_num
FROM [PODT])B
on A.row_num=B.row_num
WHERE (a.JobNo = 'a' OR b.JobNo = 'a')
ORDER BY A.[PartNo],B.[PartNo]
ใช่เลยครับ น่าจะประมาณนี้ นั่งแกะอยู่นาน55555
ขอบคุณครับ โทษทีครับที่ตอบช้า เพิ่งมีเวลามานั่งทำ TT
Date :
2018-03-20 13:12:20
By :
Twinhat
Load balance : Server 05