我有一個關鍵字搜索,使用UNION ALL在多個數據庫表中搜索縮略圖圖像。我有兩個頁面,results.php和view.php。我的目標是能夠單擊results.php上的縮略圖圖像,並將其導向到view.php上同一圖像的更大版本。問題是我所有表格中的每個圖像都使用字段名稱「id」,所以當我點擊results.php上的縮略圖時,我從不同的表格中獲得了具有相同ID的兩張不同圖像。我試着將id改爲不同的名字,但是當傳遞url參數的時候,我只能選擇1個值。 (如果你可以選擇超過1我不知道如何)。所以我的問題是爲什麼我的身份證從不同的表被分組在一起,我該如何改變這一點?SQL問題 - 多個MySQL表中的相同字段名稱?
圖片搜尋結果網頁(其中工程完美):
SELECT *
FROM table1
WHERE keyword LIKE %colname% OR id LIKE %colname%
UNION ALL
SELECT *
FROM table2
WHERE keyword LIKE %colname% OR id LIKE %colname%
查看圖像頁面(這裏有問題):
SELECT *
FROM table1
WHERE id = colname
UNION ALL
FROM table2
WHERE id = colname
需要注意的是,如果您需要所有列,則使用'*'命名所有列不是好的做法__even__。:) – Nonym