พึ่งเคยใช้งานครั้งแรกโปรดอ่านที่นี่! howtouse!
x
  • Register
หางานด้าน IT อยู่เหรอ?

การรวม result SQL จาก select query 2 อันทำอย่างไร

+1 vote

 

ผมมี Select Query 2 อันครับ ซึ่งแต่ละอันได้คำตอบดังนี้
 
ผลลัพธ์ Query อันแรก
 
x1 Jan
x2 Feb
x3 Mar
x4 Apr
----------------------------------------------------------------------------------------------
ผลลัพธ์ Query อันที่2 เป็น
 
y2 Feb
y3 Mar
y4 Apr
 
สิ่งที่ผมจะทำคือการเอาผลลัพธ์มารวมกันให้ได้แบบนี้
 
x1 NULL Jan
x2 y2 Feb
x3 y3 Mar
x4 y4 Apr
 
 
ไม่ทราบว่าผมต้องทำยังไงครับผม
 
ตอนนี้เพื่อนให้ลองเอา OUTER JOIN มาใส่แล้วแต่มันมี Error ครับ
ดูเพิ่มเติมได้ที่ : http://pastebin.com/GEye746y
เพิ่มรูป table ที่ใช้นิดนึงครับ : 
 
ปล ใช้ SQL Server Enterprise ครับ
ขอบคุณครับ
 

 
ถามเมื่อ May 23, 2012 in PHP & MySQL & Ajax โดย Prinze Zeaist (118 คะแนน)
edited May 23, 2012 โดย Prinze Zeaist
   

2 Answers

+2 votes
(ชุดแรก) r1 LEFT JOIN (ชุดสอง) r2 ON r1.MNAME = r2.MNAME

ปล. น่าจะมีวิธีที่เขียนได้ง่ายกว่านี้นะ
ตอบเมื่อ May 23, 2012 โดย Krurkrit Phoosakul (1,174 คะแนน)
ตามนั้น ดีสุดแล้ว

ถ้าจะให้ดีกว่านี้ คงต้องเอา ERD ของ Prinze Zeaist มาดูกันใหม่

เพราะตอนนี้เรารู้แค่นี้ 555+
ขอบคุณครับ แต่เหมือนมีปัญหา error syntax ตรง order by ครับ

ผมไม่ค่อยรู้เรื่องเรื่อง SQL เลยน่ะครับ เลยแก้ไม่ค่อยจะถูกครับ
+1 vote

ใช้ LEFT JOIN ครับ

 

จุดที่เป็น Reference กันคือ ชื่อเดือนครับ ระหว่าง MNAME ของ Query 1 กับ MNAME ของ Query 2

 

เอามันมา LEFT กัน โดยที่ MNAME = MNAME กันครับ

 

ผมลองเขียน Query ใหม่คร่าวๆ ประมาณนี้ครับ

http://pastebin.com/WarPBhWK

ดูที่ LEFT JOIN นะครับ

ใน LEFT JOIN ผมยัด Query 2 ของคุณลงไป ครับ

 

 

 

 

 

 

ตอบเมื่อ May 23, 2012 โดย phanithanj (1,139 คะแนน)
ขอบคุณครับ
บอกตรงๆว่าผมอ่านแล้วไม่รู้เรื่องเลย 555+
เลยลองเอาใส่ไปตรงๆ แล้วมันเด้งแบบนี้เลยครับ

Missing FROM clause.
Error in SELECT clause: expression near ','.
Error in SELECT clause: expression near 'FROM'.
Unable to parse query text.

ไม่รู้ มันไป error ส่วนไหน = =a
ผมเขียนตาม SQL คุณคร่าวๆ อะครับ

แต่หลักการมันก็ LEFT JOIN ใน Sub Qeury อีกทีนึง

ผมว่าลองศึกษา SQL ไปด้วยจะดีกว่านะครับ
ถ้างม อยู่แบบนี้ ต่อไปแย่แน่ๆ เลยครับ
ครับผม

ผมก็ลองตามเวปต่างๆ แล้วแหละครับ มันก็ขึ้น error in syntax อยู่ทุกทีเลยครับ

เลยลองมาถมดูครับ ตอนนี้ก้กำลังลองดูอยู่จากหลายๆสำนักเอามาประยุกต์ปรับเปลี่ยนดูครับ
select T1.X as X1 ,T2.X as Y2 ,T1.M
from Table_1 T1 left join Table_2 T2
On T1.M= T2.M


แบบนี้เลยไม่ได้เหรอครับ

Related questions

+2 votes
1 คำตอบ
+4 votes
1 คำตอบ
1,743 views ถามเมื่อ May 5, 2012 in Software โดย beebrabie (106 คะแนน)
+3 votes
1 คำตอบ
364 views ถามเมื่อ Apr 23, 2012 in Network-Server โดย anonymous
...