IDのリストを渡し、次のようなselectステートメントを作成するために、dapperにしたいと思います
SELECT Id FROM (VALUES
('2f1a5d4b-008a-496e-b0cf-ba8b53224247'),
('bf63102b-0244-4c9d-89ae-bdd7b41f135c')) AS tenantWithFile(Id)
WHERE NOT exists( SELECT [Id]
FROM [dbo].[TenantDetail]AS td
WHERE td.Id = tenantWithFile.Id
)
データベース内にないリスト内のアイテムを取得します。 TVPのタイプを作成せずにこれを行う簡単な方法はありますか?
回答 2 件
Azure SQLまたはSQL Server 2016+を使用している場合は、JSON配列を渡すだけで、OPENJSONを使用して配列をテーブルに変換できます
DECLARE @j AS NVARCHAR(max) = '["2f1a5d4b-008a-496e-b0cf-ba8b53224247", "bf63102b-0244-4c9d-89ae-bdd7b41f135c"]'; SELECT [value] FROM OPENJSON(@j)
関連した質問
- エンティティフレームワークは、レコードが存在するか、すでに追加されているかどうかを確認せずにレコードを追加します
- 入力した値のSQLServerの主キーを見つけるにはどうすればよいですか
- アイテムを削除しようとするとエラーメッセージ404が見つからないのはなぜですか
- データベーストリガーをスキャフォールディングする方法
- 「varchar値の変換時に変換に失敗しました」というエラーを受け取りました
- tryブロックが存在する場合でもnull例外をスローするSQLテーブルからデータを取得します
- EFコアSQLフィルター変換
- efコアがあり、ユーザー定義のテーブルタイプがないIDのリストで多くのオブジェクトをクエリします
- ストアドプロシージャから出力パラメータの結果とクエリの結果を取得するにはどうすればよいですか?
- データベースからバイト配列画像を取得して画像ボックスコントロールに表示する際の問題
Seanが述べたように、TVFなしで区切られた文字列を解析する方法を示す小さなスニペットがあります。 ...クエリに簡単に組み込むことができます。
例
戻り値