[英]MySQL column references different table names
我有多個表,每個表都包含非常不同類型測試的結果:test_a、test_b、test_c 等。一個“人”可以對相同或不同類型的測試進行多次測試。 當前的erd
目前,我使用表 test_ref 中的單獨索引列來引用每個包含測試結果的表。 這意味着每次添加新的測試表/類型時我都必須添加一個新列。
有沒有可能改變這個? 理想情況下,test_ref 應該只指向任何可用測試表中的一個唯一測試。
所以我的問題可能是如何從一列中引用多個表?
我希望這很清楚,我是新的數據庫設計,我已經尋找了這方面的例子,但我一定遺漏了一些東西,因為我找不到其他例子。 提前謝謝了。
在那里,您需要將 test_a、test_b、test_c 中的 test_id 值/引用放入一列,並添加帶有 test_type 的列(您可以選擇“A”、“B”……)。
SELECT
*
FROM
test_ref tr
INNER JOIN
test_a tt on tr.test_id = tt.id AND tr.test_type = "A";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.