Tags:

จะ 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 ครับ

Comments

By: mix5003
AndroidUbuntuWindows
mix5003's blog
on 15/09/11 19:19 #333755 toggle
mix5003's picture

น่าจะประมาณนี้ ไม่ก็ JOIN ก็น่าจะได้

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
By: saknarak
Android
saknarak's blog
on 15/09/11 20:30 #333802 toggle
saknarak's picture

แบบ join

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
By: mix5003
AndroidUbuntuWindows
mix5003's blog
on 18/09/11 15:20 #334470 Reply to:333802 toggle
mix5003's picture

ทำไมเหมือน = หายไปตัวนึงหว่า?

By: shikima
Windows PhoneAndroidUbuntu
shikima's blog
on 16/09/11 10:59 #334102 toggle
shikima's picture

ใช้งานได้ทั้งสองแบบเลย ขอบคุณมากครับ


CMDEVHUB เขียนเอามันส์ ลองเข้าไปดูความมันส์ได้ครับ