2011-03-23 5 views
2

私は、デフォルト構成とユーザー構成を格納するテーブルを格納するテーブルを持っています。私は2つのテーブルに参加して必要なすべての情報を得ることができますが、2番目の列に値が存在するときに、1つの列をもう一方の列に上書きすることがより賢明な方法になることが期待されます。MySQLの列をマージする

例:

現在のクエリ結果:

id defaultValue userValue 
1  one   ONE 
2  two 
3  three  THREE 
4  four 

欲望のクエリ結果:

id value 
1 ONE 
2 two 
3 THREE 
4 four 

は多分これを行うには良い方法はありません...私はしようと思いましたPHPでそれを行うよりもメソッドが存在すれば、おそらくMySQLでそれを行うほうが速いかもしれません。

答えて

6

あなたはこのためにCOALESCE()を使用することができます。

SELECT id, COALESCE(uservalue,defaultvalue) AS value 
FROM table 
+0

ニース解決!それはまさに私が探しているもののように見えます。 – Endophage

関連する問題