インデックスを取得するか、mysqlでペアリストを使用しますか?

.net dapper mysql

質問

私は以下のようなものをやりたいと思っています。私はlsがペア(IDと値が一致するもの)です。たぶん私はリストの一致のインデックスを得ることができる場合、私はちょうど通常のリストを使用してコード内のIDをつかむことができます

select @id from table1 where blah in @ls

受け入れられた回答

DapperはSQL上の非常に薄い単板です。構文の変更として追加するのは、 INからの拡張だけです:

x in @foo

x in (@foo0, @foo1, @foo2, @foo3)

しかし、私はあなたの質問がそのように書かれているとは思わない。最初のステップは、クエリを通常のSQLで記述することです。これがSQL Serverの場合、私は考えています:

  • 区切られた文字列入力を表形式の出力に変換するUDF
  • 内部結合

例えば:

select #x.id
from dbo.MyMagicUdf(@s) #x -- has columns id and value
inner join table1 t on t.blah = #x.value -- or whatever the join is

しかし、繰り返します:最初のステップは、あなたのRDBMSのSQLにそれを書くことです。 その作業を済ませたら、それを使って作業することが大変です。



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ