SQL:如何形成查询以组合查找?

时间:2013-04-22 07:44:45

标签: sql postgresql

我有2个表,一个存储索引,另一个存储值:

 id  | index1  | index2
-----+---------+-------
 1   |      1  |      2

 index  | value
--------+------
 1      | hello
 2      | world

我想制作一个可以为我提供组合视图的查询:

 id  | value1  | value2
-----+---------+-------
 1   |  hello  |  world

我怎么能这样做?提前致谢

2 个答案:

答案 0 :(得分:1)

JOIN会有所帮助。类似的东西:

SELECT tbl_index.id, tv1.value, tv2.value FROM tbl_index 
LEFT JOIN tbl_values AS tv1 ON tbl_index.index1=tv1.id
LEFT JOIN tbl_values AS tv2 ON tbl_index.index2=tv2.id
WHERE tbl_index.id=$desired_id

它对tbl_index中每行的index1index2值的作用是什么,从tbl_values中获取匹配值。

答案 1 :(得分:0)

试试这个

选择indexTable.id,tabele1.value,table2.value 来自indextable table1.id = indextable.index1上的内连接table1 table2.id = indextable.index2

上的内连接table2