2011-10-19 9 views
0

SQLテーブルに電話番号が格納されている列が2つあります。 両方の数字を "、"で区切って表示しています "、"と表示するデータを両方とも連結すると、最初の列が空白のときに "xxxxxxxxxx" 2列目が空白のときに "xxxxxxxxx"と出力されています 両方の列に "xxxxxxxxx、xxxxxxxxx"のようなデータが含まれている場合にのみ、完璧な出力を得ています。php mysqlにデータが表示されています

いずれかの列データが見つからない場合、追加の "、"を削除するにはどうしたらいいですか?

これは、トリックを行います

おかげ

サンディープ

+1

現時点でのPHPコードは何ですか –

答えて

3

を助けてください。なぜPHPを使用すると、それはMySQLのクエリ内で取り組むことができたときにことを確認

$ret = implode(',', array_filter(array($value1, $value2))); 
+0

これはまだOPが作り出すことをすると思います。 – ariefbayu

+0

いずれかの値が空白の場合は、 "、"と表示されます。:-( – Sandy505

+0

@SandeepBajoria空の値をフィルタリングするための 'array_filter'を追加しました。もう一度やり直してください – xdazz

1

CONCAT_WSを使用してデータをプルしている間に、クエリを実行することができます。

SELECT CONCAT_WS(',', NULL , 'col2') ; 

OUTPUT:空のフィールドがNULLとして設定されている場合 COL2

はしかし、これはのみ動作します。空のフィールドがNULLでない場合は、IF条件をさらに入力して、フィールドが空の場合はNULLと設定します。

SELECT CONCAT_WS(',', IF(col1 = '', NULL, col1) , 'col2') ; 
関連する問題