 |
|
INNER JOIN 2 ตาราง แบบดึงมา 2 คอลัมน์บน gridview ไม่ได้ค่ะ |
|
 |
|
|
 |
 |
|
สอบถามค่ะ
คือ จะทำรายงานโดยใช้ INNER JOIN 2 ตาราง ดังนี้
ตารางที่ 1 tplaoftrn
1. PT_ID
2. PT_CODE
3. PT_Start
4. PT_End
ตารางที่ 2 tlocate
1. LocateID
2. LocateDesc
จะให้แสดงรายงานตามคอลัมน์
1. PT_ID
2. PT_CODE
3. PT_Start (LocateDesc)
4. PT_End (LocateDesc)
Code (SQL)
select pt .PT_Code,pt .PT_YearID,pt .TST_Code ,pt .CT_Code,lc .LocateDesc
from tplaoftrn as pt INNER JOIN tlocate as lc ON pt.PT_Start = lc.LocateID where pt.PT_Start = lc.LocateID
ถ้าดึงคอลัมน์เดียว PT_Start แสดงได้ค่ะ
แต่ถ้าจะดึงมาแสดงสองคอลัมน์ PT_Start (LocateDesc) และ PT_End (LocateDesc)
Code (SQL)
select pt .PT_Code,pt .PT_YearID,pt .TST_Code ,pt .CT_Code,lc .LocateDesc
from tplaoftrn as pt INNER JOIN tlocate as lc ON pt.PT_Start = lc.LocateID and pt.PT_End = lc.LocateID where pt.PT_Start = lc.LocateID and pt.PT_End = lc.LocateID
ดึงข้อมูลไม่ขึ้นค่ะ รบกวนผู้รู้ด้วยค่ะ
Tag : .NET, Ms SQL Server 2008, Web (ASP.NET), VB.NET
|
|
 |
 |
 |
 |
Date :
2015-01-27 17:14:15 |
By :
chanaporn |
View :
1673 |
Reply :
4 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอดูข้อมูลทั้ง 2 ตารางหน่อยครับ
|
 |
 |
 |
 |
Date :
2015-01-27 17:21:09 |
By :
thaidevelopment.net |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
จาก Code จะเท่ากับว่า
pt.PT_Start = pt.PT_End
เข้าใจว่า ข้อมูลแบบนี้ไม่มีอยู่จริง ก็เลยไม่ขึ้น
คำสั่งหลัง Where เป็นคำสั่งเดียวกับ Join เราไม่ต้องใส่ก็ได้ครับ
ในกรณีนี้น่าจะต้อง join 3 table แทนครับ
ลองแบบนี้ดูน่ะครับ ผมก็มั่ว ๆ เอา
select pt .PT_Code, pt .PT_YearID, pt.TST_Code , pt.CT_Code, lc.LocateDesc, lc2.LocateDesc
from tplaoftrn as pt
INNER JOIN tlocate as lc ON pt.PT_Start = lc.LocateID
INNER JOIN tlocate as lc2 ON pt.PT_End = lc2.LocateID
|
ประวัติการแก้ไข 2015-01-27 18:50:34
 |
 |
 |
 |
Date :
2015-01-27 18:49:45 |
By :
fonfire |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณค่ะ
|
 |
 |
 |
 |
Date :
2015-01-27 21:02:19 |
By :
Chanaporn |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
INNER JOIN จำไว้เลยคับว่าถ้าข้อมูลไม่ตรงกันเมื่อไหร่ ข้อมูลของ 2 Table ก็จะไม่แสดงครับ ทางที่ดีหันไปใช้เป็น LEFT JOIN จะดีกว่าครับ
|
 |
 |
 |
 |
Date :
2015-01-27 21:49:33 |
By :
proogrammer ด้อยปัญญา |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|