Szybkość działania sql

0

Witam

czy będzie jakaś różnica w szybkośći działania, jesli w predykacie WHERE podam, tak:

WHERE (my_data = 'A' OR my_data = 'B' OR my_data = 'C' OR my_data = 'D')

zamiast :

WHERE my_data IN ('A', 'B', 'C', 'D')

3

Na 99% nie będzie do optymalizator kosztowy sprowadzi to do takiego samego "kodu" wynikowego.

0

zawsze mozesz sprobowac zrobic benchmarka, i wykonac to zapytanie na takich samych danych (np dla miliona rekordow), ale zapewne jest tak jak pisze @Shalom

1

w mysql nie ma czegoś na wzór postgresowego EXPLAIN ?

0

Na 99% nie będzie do optymalizator kosztowy sprowadzi to do takiego samego "kodu" wynikowego.

W przypadku MySQL nie byłbym taki pewien. Nawet nie zdziwiłbym się, jakby działało dla dwóch ORów, a dla trzech już nie :D

0

To trzeba sprawdzić doświadczalnie. Na pewno SQLite tego by nie zoptymalizował i zapytanie z IN byłoby szybsze. MySQL nie wiem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1