-1

次のシナリオを検討してください。

いくつかのテーブル主キー ID の 2 つのコンマ区切り文字列を ( '1,2,3,4'and '2,3,4') として変数@table1Idsandに持っています@table2Ids

次に、次の行があります。

SELECT 
   ROW_NUMBER() OVER (ORDER BY GETDATE()) AS [ROW],
   ID 
INTO #table1Ids 
FROM ConvertCSVToBigIntTable(@table1Ids,',');

SELECT 
   ROW_NUMBER() OVER (ORDER BY GETDATE()) AS [ROW],
   ID 
INTO #table2Ids 
FROM ConvertCSVToBigIntTable(@table2Ids,',');

SP にパラメーターとして渡される文字列値から 2 つのテーブルを取得するために、これを行っています。

#table1Idsただし、とのタプルの順序は、#table2Ids相互に関連しているため、そのままである必要があります。

私の質問は、それらが故障する可能性があるということです。

ConvertCSVToBigIntTableカンマ区切りの文字列をテーブルに変換する組み込み関数であることに注意してください。

4

1 に答える 1

0

ConvertCSVToBigIntTable を変更して、CSV から作成するテーブルの ID 列として ID 列を追加してみませんか?

そうすれば、ROW_NUMBER を実行する必要さえなく、ID で注文できます。

于 2013-04-24T09:36:57.540 に答える