SQLを記述して繰り返し場所コードを抽出し、サブロケーションの詳細を分離する必要があります。しかし、私が扱っているデータは、設定されたパターンに従わない。ここで SQLで一貫性のないデータを解析する
は、位置コードがどのように見えるかのサンプルです(実際のテーブルには5,000以上の拠点があります):JR-DY-TIN DY-RHOLD DY-PREQ-TIN GLVCSH GLFLR GLBOX1 GLBOX2 GLBOX3 GLBOXA GLBOXB GLBOXC GLBOXD GL GL0001 GL0002 GL0003 GL0014 …
数値ですが、これまでに私が持っているのはすべてです。
select
LocationCode,
REVERSE(LEFT(REVERSE(LocationCode),PATINDEX('%[A-Za-z]%',
REVERSE(LocationCode))-1)) AS PaddedNumbers
from LocationTable
Results...
LocationCode PaddedNumbers
------------ -------------
JR-DY-TIN
DY-RHOLD
DY-PREQ-TIN
GLVCSH
GLFLR
GLBOX1 1
GLBOX2 2
GLBOX3 3
GLBOXA
GLBOXB
GLBOXC
GLBOXD
GL
GL0001 0001
GL0002 0002
GL0003 0003
GL0014 0014
私はまだ二つの別々の列に次のように表示する方法を見つけ出す:サブ場所の詳細なし
- 位置コード、例えばGLBOX、またはちょうど サブロケーションがない場合は元のロケーションコード。 GLFLR。
- 同時に数値と数値以外のサブロケーションの詳細。私はデータをこれを達成することができていた場合は次のようになります: GLBOX、1を表示する列が2、3、A、B、C、D、E、Fの
編集用
LocationCode MainLoc SubLoc
------------ --------- ------
JR-DY-TIN JR-DY-TIN
DY-RHOLD DY-RHOLD
DY-PREQ-TIN DY-PREQ-TIN
GLVCSH GLVCSH
GLFLR GLFLR
GLBOX1 GLBOX 1
GLBOX2 GLBOX 2
GLBOX3 GLBOX 3
GLBOXA GLBOX A
GLBOXB GLBOX B
GLBOXC GLBOX C
GLBOXD GLBOX D
GL GL
GL0001 GL 0001
GL0002 GL 0002
GL0003 GL 0003
GL0014 GL 0014
何か助けていただければ幸いです。
環境:SQL Server 2008 R2。
あなたが見えるように、最終的な結果を希望かを示すことはできますか? –
すべての有効なロケーションコードのリストがありますか? – mxix
はい、このリストは5,000以上の場所にあります。 – LeSteelBox