3

所以我有一个看起来像这样的表:

field_value      field_label        record_id        data_element        data_id
                    8-7-1966             8            immunization           163
  8-7-1966          1966-8-7            163           immunizDate            164
                                        163           immunizProvider        165

我需要动态地获取所有这三个记录。我可以通过以下方式获得第一条记录:

SELECT 
    field_value, field_label, record_id, data_element, data_id 
FROM 
    substance_data 
WHERE 
record_id = 8

但是我需要以某种方式获取另外两条记录,知道它们的 record_id 将等于第一条记录的 data_id。

4

1 回答 1

2
SELECT 
    field_value, field_label, record_id, data_element, data_id 
FROM substance_data 
WHERE 
    record_id = 8 
OR  record_id IN (SELECT DISTINCT 
                      data_id 
                  FROM 
                      substance_data 
                  WHERE 
                      record_id = 8
                 )
于 2012-09-15T18:32:41.930 回答