に多くの行をマージ:MySQLは私のようなデータ構造を持つテーブルが空でない値を持つ1
+-----------+-----------+-----------+-----------+
| member_id | bank_name | bank_ac | ac_holder |
+-----------+-----------+-----------+-----------+
| 14 | | 012-000 | |
| 14 | | 012-001 | Andy |
| 14 | CR Bank | 012-002 | Jacky |
+-----------+-----------+-----------+-----------+
私は必要なものは、最初の空でない値で満たされたすべての列を持つ一つのエントリを選択することです。 As:
+-----------+-----------+-----------+-----------+
| member_id | bank_name | bank_ac | ac_holder |
+-----------+-----------+-----------+-----------+
| 14 | CR Bank | 012-000 | Andy |
+-----------+-----------+-----------+-----------+
私はどのように起動するのかわかりません。誰かが私に提案を与えることができますか?
ps:空のフィールドはNULLではなく、空の文字列です。あなたはケース句をあなたのデータは「のような空の値が含まれている場合は、いくつかの集計
select member_id,
min(bank_name) bank_name,
min(bank_ac) bank_ac,
min(ac_holder) ac_holder
from demo
group by member_id
を使用することができますhere
'Andy'がJacky''の上に保持されますこれにより、ロジックは何ですか?のための別の回避策 –
助けてくれてありがとうTim、私は最初に空ではない値が必要です。アンディはジャッキーよりも早く登場するので、私はアンディを得ます – user3711105
2つの銀行名があるかもしれないと仮定できますか?それとも3つ? 'bank_name'カラムと' ac_holder'カラムだけに欠損値があると仮定できますか? –