合并两个表

时间:2012-09-17 10:10:25

标签: mysql database join

我有两张表,其中包含以下描述:

record(record_id,min_index,max_index)

points(point_id,point_name,val1,val2,rank), point_id being on auto-increment

记录表中的min_indexmax_index指向点表中的point_ids。  即对于特定记录,各个点是> = min_index和< = max_index。

我需要合并这两个表,这样最终的表类似于这样的

points(point_id,record_id,point_name,val1,val2,rank)

我知道这违反了标准化标准,但这似乎与我遇到的问题非常吻合。我不确定如何合并这两张表。

2 个答案:

答案 0 :(得分:2)

使用MySQL的join运算符只需BETWEEN ... AND ...表来指定您的加入条件:

SELECT points.point_id,
       record.record_id,
       points.point_name,
       points.val1,
       points.val2,
       points.rank
FROM   points JOIN record ON
         points.point_id BETWEEN record.min_index AND record.max_index

答案 1 :(得分:0)

SELECT a.point_id,
   b.record_id,
   a.point_name,
   a.val1,
   a.val2,
   a.rank
from points a , record b
where ((point_id>=min_index)and (point_id<=max_index))