2013-12-18 96 views

回答

0

你不能以你建議的形式做到這一點。

在單個查詢中顯示包含400的列的最佳方式是使用CASE或類似方法,每個列中有一個案例在測試中。例如:

SELECT CASE 
    WHEN col1=400 THEN 'col1' 
    WHEN col2=400 THEN 'col2' 
    WHEN col3=400 THEN 'col3' 
    ... 
    ELSE 'Not found' 
END CASE 
FROM mytable 
WHERE id=7 

這是可能的用動態SQL(或PHP當量)做它使用INFORMATION_SCHEMA查詢並且使用在第二查詢那些列如以上所述一個從所述表中讀取的所有列。

但是,我猜你想這樣做的原因是因爲你的表格不在first normal form中,而且你正在將重複值存儲在列中。您可能需要查看第一個常規表單,看看是否確實如此,以及是否應該重新設計數據庫以避免此問題和其他問題。

相關問題