0

以下の2つのクエリの間にパフォーマンスの違いがあることを知りたいです。

クエリ 1:

Select
         personName
From tbl
Where personName = 'Asif'

クエリ 2:

Select
         personName
From tbl
Where personName = 'Muhammad Asif'

PersonName フィールドはインデックスにありません。スペースを含む文字列を検索すると、SQL エンジンがクエリを実行するためにより多くの労力/時間を必要とするか、スペースがない場合と同じように動作することを知りたいだけです。

背の低い人:

  1. 文字列がスペースなしのようで、Asif や英数字 Q1234 のように短い場合
  2. 文字列に 'Muhammad Asif' のようなスペースが含まれている場合
  3. 文字列にスペースが含まれていて、'My name is Khan' のように少し長い場合

これらの検索基準に対する SQL エンジンの影響はどのようなものでしょうか?

4

1 に答える 1

0

Muhammad Asif を探している場合、最初のクエリではそのレコードは返されません。where句でequalを使用すると、完全一致のみが返されます。

「asif」という名前を含むレコードを探している場合は、次を使用できます

WHERE personName LIKE '%Asif%' は、Asif と Muhammad Asif の両方、および Asif を含むその他のレコードを返します。ただし、LIKE はかなりリソースを集中的に使用するクエリです。

于 2012-06-06T20:11:08.050 に答える