2016-06-28 3 views
0

インデックスにマップする必要のあるさまざまなアイテムのSKU(在庫管理単位)があります。 例:[ST]、[12]、[00]MySQLでのSKUのマッピング

しかしtheresのを考慮:

| __SKU_ID__| __Item_Name__ | __Price__ | 

|ST1200  |SwissCheese  | $3.25  | 

IDが他に、このように見えるであろう、2文字ずつを含む一意の識別子の3組で構成されていますアレイのがmysqlにありません。私はそれを見つけることができません。私はこれを行うことができます配列や別の方法の代替ですか?中央部についてSELECT LEFT(SKU_ID, 2) ...

[12]使用MID:最初の部分[ST]使用LEFTについて

+0

あなたは "そのインデックスにマップする" とはどういう意味ですか? – wesleywmd

+0

個々のコンポーネントと関連性があると仮定すると、最初の正規形よりも見た目が必要です。不確実なスキーマに対応する必要がある場合は、ビューを使用してマッピングを作成するか、複合属性を分解します。 – symcbean

答えて

1

SELECT MID(SKU_ID, 3, 2) ...3そう1で始まり、212を返す中間サブストリングの長さを定義する文字列で3位を規定SELECT RIGHT(SKU_ID, 2) ...

:最後の部分 [00]使用 RIGHTについては

その後、必要に応じてやることができます。

SELECT LEFT(SKU_ID,2) AS left, MID(SKU_ID,3,2) AS middle, RIGHT(SKU_ID,2) AS right FROM Table ...

+0

SKUが6文字より長い場合、12桁の長さの場合、 SELECT LEFT(SKU_ID、4,2).. –

+0

@CannedOnion on? – Matt

+0

@CannedOnionあなたの状況に合わせて*あなたの*コードを適合させる必要があります。クリエイティブを取得する – Martin

関連する問題