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。
我想知道是否有可能用一個SQL語句遞歸地獲取整條記錄鏈。即使用'record_id = 8'得到記錄,並且所有具有'record_id'的記錄等於任何先前選擇的記錄的'data_id'。 – petersohn
@petersohn:可以用遞歸CTE查詢。壞消息是mysql沒有遞歸CTE。 – wildplasser
這個解決方案非常完美。如果沒有太多的麻煩,是否有辦法抓住它所說的record_id = 8,並保留它。例如,我推這到一個數組,並使用record_id作爲存儲指標,有沒有辦法抓住第一個records_id,並將其傳遞出sql查詢? –