パフォーマンスの優位性が1以上あるかどうかを確認したいと思います。ここで1つのSQLを使用して複数のレコードまたは複数のSQLを取得して個別のレコードを取得する
は一例です:?
select * from table_a where from=1
select * from table_a where from=2
select * from table_a where from=3
.
.
select * from table_a where from=10000
一方が他方をアウトパフォームしますシナリオはどのようなものに比べて
// suppose I want to retrieve 10000 different records
select *
from table_a
where from in (1,2,3,4,5,6 .... 10000)
// alternatively
select *
from table_a
where from=1 or from=2 or from=3 ... from=10000
ここではWHERE
節は簡略化されていますが、AND節とOR節がネストされている可能性があります。
あなたが示したように、単一のSQL文を使用するとパフォーマンスが向上するはずです。 <= 10000(可能な場合)からwhere句を単純化することもできます。 – Shiping
@Shiping、yap私の例は単純化されていますが、複数の節を持つ人はどうですか?私は簡単にするために連続番号を使用しています。実際のSQLには連続していない乱数があります。 – Mox
一般的に言えば、IOアクセスが少なく、パフォーマンスが優れています。もちろん、常に例外があります。 – Shiping