จะ query ยังไงเหรอครับ
มีฐานข้อมูล สมมุติดังนี้
database province
id
| name
1 | กรุงเทพ
2 | เชียงใหม่
3 | ภูเก็ต
4 | นครสวรรค์
แล้วมีอีกตารางเก็บฐานข้อมูลประมาณนี้
id
| start
| end
| day
1 | 1 | 2 | 2011-08-01
2 | 2 | 4 | 2011-08-02
3 | 4 | 1 | 2011-08-02
ผมอยากจะ query ครั้งเดียวโดยให้แสดงผลลัพธ์เป็น
1 | กรุงเทพ | เชียงใหม่ | 2011-08-01
ประมาณนี้ ไม่ทราบว่าต้องเขียนยังไงเหรอครับ
ภาษาที่ใช้ MySQL กับ postgresql ครับ
น่าจะประมาณนี้
ไม่ก็ JOIN ก็น่าจะได้
{syntaxhighlighter brush:sql}
select c.id,p1.name,p2.name,c.day FROM
table2 c,province p1,province p2
WHERE p1.id = c.start AND p2.id = c.end
{/syntaxhighlighter}
แบบ join
{syntaxhighlighter brush:sql}
SELECT T1.id, P1.name, P2.name, T1.day
FROM table1 T1
JOIN province P1 ON T1.start=P1.id
JOIN province P2 ON T1.end P2.id
{/syntaxhighlighter}
ทำไมเหมือน = หายไปตัวนึงหว่า?
ใช้งานได้ทั้งสองแบบเลย ขอบคุณมากครับ