2017-09-22 8 views
0

私は、idsが別のテーブルで見つかった1つのテーブルから複数のIDを選択したいストアドプロシージャを作成しています、2,3,6)。ストアドプロシージャ - テーブルからIDを選択し、別のテーブルのコンマ区切りIDと一致させます

これは私が作成しようとしているものです。しかし、期待どおりに動作していません。

SELECT [Name] 
FROM [Table1] t1 
INNER JOIN [Table2] t2 ON REPLACE(t1.[ID], ',', '') = t2.[ID] 
+0

手続きのコードは**非常にベンダー固有である** - あなたは 'mysql'、' PostgreSQLのを使用しているかどうかを指定するためのタグを追加してください'、' sql-server'、 'oracle'または' db2' - あるいは全く別のものです。 –

答えて

0

これは、ストアドプロシージャのように答え

SELECT [Name] 
FROM [Table1] t1 
INNER JOIN [Table2] t2 
ON ',' + t1.[ID] + ',' like '%,' + cast(t2.[ID] as nvarchar(20)) + ',%' 
+0

いいえこれは回避策です。正解は、データベースを正規化し、値をカンマ区切りのテキストとして保存することではありません。 –

関連する問題