2012-04-09 5 views
1

ある列の値を別の列に連結するテーブルでクエリを実行したいとします。以下の(javascriptyの試み)のような2つの列の値を連結する

何か:

UPDATE table 
SET items = items+","+item1 
WHERE item1 != "No Data" || item1 != ""; 

がデータベースに行うには、このことは可能ですか私はミドルウェアでそれをやってする必要がありますか? ポインタは再び非常に感謝します。

+0

これは可能ですが、具体的な質問があるので覚えていません。 –

答えて

2

concat_wsを見てみましょう:マイクで説明したよう

CONCATの主な違いの
UPDATE table 
SET items = CONCAT(items,',',item1) 
WHERE item1 != "No Data" OR item1 != ""; 

ワン()とCONCAT_WS()関数(:

# Untested, but should work 
UPDATE table 
SET items = CONCAT_WS(',', items, item1) 
WHERE item1 != "No Data" || item1 != ""; 
+0

魅力的ですね!ありがとう – Chin

1

この問題にアプローチする別の方法を上記)はNULL値の処理です。詳細については、MySQLリファレンスマニュアルの文字列関数のセクションを参照してください。http://dev.mysql.com/doc/refman/5.6/en/string-functions.html

"||" MySQLサーバーがPIPES_AS_CONCATモードを有効にしている場合は、パイプ(パイプ)文字を使用します。場合によっては、それを「OR」に変更する方が良いでしょう。 http://dev.mysql.com/doc/refman/4.1/en/server-sql-mode.html#sqlmode_pipes_as_concat