-1

この順序である必要があるテーブルから列を抽出する SQL クエリがあります

アイテム ID、Parms、Move リスト、MsgId。また、クエリには、UserCode = 自動化や、日付が現在の日の 1 日前に設定されているなど、いくつかの要件が残っている必要があります。

1 行の Parms 出力の例は次のとおりです。

    CURRENT OUTPUT
    Parms:
    V51370,Move List,M-000001

--

    REQUIRED OUTPUT
    Media: v51370
    Comments: Was Removed From
    Move List: M-000001

私がしたいのは、この Parms 列を Item Id と Move list 列の間にある 2 つの別々の列に分割することです。最初の列は、Parms 列から最初の 6 文字を抽出する Media と呼ばれる必要があります:v51370。2 番目の列はコメントです。MsgId が 1 の場合、コメントは次のようになります。

私がテストできる可能性のあるクエリについて、誰でも提案できますか? Parms 列を分割する場所がわかりません。それは大歓迎です。

注: SQL Server Management Studio 2008 を使用しており、テーブル名は JnlList です。

     1 SAMPLE ROW (SELECT * FROM JNLLIST):
     ItemId: 2
     Date: 20122102.124652563
     Object: S-000001
     MsgID: 1
     Parms: V86143,Scratch List,S-000001
     Delimiter: -
     UserCode: Automation
     ActionId: 5
     List Type: S
4

1 に答える 1

0

parms の使用から最初の 6 文字を分離するには

SELECT SUBSTRING(Parms,1,6) AS Media 
FROM YOUR TABLE;

次に、同じ構文のサブクエリを使用して、Parms 列から残りの文字を選択し、それらを別の列に入れることができます

于 2013-06-28T15:48:16.890 に答える