申し訳ありませんが、それがくだらないタイトルであることはわかっていますが、問題を説明するより簡潔な方法は思いつきませんでした.
電話番号を含む (MSSQL 2008) テーブルがあります。
| CustomerID | Tel1 | Tel2 | Tel3 | Tel4 | Tel5 | Tel6 |
| Cust001 | 01222222 | 012333333 | 07111111 | 07222222 | 01222222 | NULL |
| Cust002 | 07444444 | 015333333 | 07555555 | 07555555 | NULL | NULL |
| Cust003 | 01333333 | 017777777 | 07888888 | 07011111 | 016666666 | 013333 |
そうしたいです:
重複する電話番号を削除する
「07」で始まるものが最初の電話番号になるように、電話番号を並べ替えます。複数の 07 がある場合は、最初のフィールドにある必要があります。それ以外の数字の順序は重要ではありません。
たとえば、処理後、テーブルは次のようになります。
| CustomerID | Tel1 | Tel2 | Tel3 | Tel4 | Tel5 | Tel6 |
| Cust001 | 07111111 | 07222222 | 01222222 | 012333333 | NULL | NULL |
| Cust002 | 07444444 | 07555555 | 015333333 | NULL | NULL | NULL |
| Cust003 | 07888888 | 07011111 | 016666666 | 013333 | 01333333 | 017777777 |
目標を効率的に達成する方法を見つけるのに苦労しています (テーブルには 600,000 以上のレコードがあります)。誰でも助けることができますか?
誰かがシナリオをいじるのに役立つ場合は、フィドルを作成しました。