Biorąc pod uwagę dużą tabelę bazy danych i wiedzę, że unikatowy wiersz z cechami, o których wiesz, jest tam, czy wiersz może być pobrany szybciej, jeśli przetestowanych zostanie więcej atrybutów pod kątem znanych wartości? Czy też wyszukiwanie będzie tak szybkie, jak znalezienie jednego wiersza z jednym polem, w którym znajduje się unikalna wartość, której oczekujesz?
Na przykład, jeśli masz 35 kolumn na stole i znasz wartości, których oczekiwałeś w 34 z tych kolumn, a wiedziałeś, że w jednym z nich znalazłeś unikalny identyfikator, czy zapłaciłbyś wymienić wszystkie znane atrybuty w SELECT?
Jeśli tak, to jak duża lub zróżnicowana byłaby baza danych, aby czas wyszukiwania pokazał wyraźną redukcję?
Czy opłacałoby się używać podkwerend, aby wcześnie wyeliminować niechciane wpisy?
Po prostu ciekawy.
=
, LIKE
lub IN()
klauzule w klauzuli where. Wpływ na to będzie miała również średnia wielkość i typ danych w tych 35 kolumnach. Jest absolutnie ZEROWA szansa, że ktokolwiek dostarczy użytecznego wglądu, chyba że ta tabela jest już zbudowana i możesz podać więcej informacji. Ogólnie, jeśli możesz użyć 3 pól w klauzuli where, aby zwrócić tę samą liczbę wierszy co 34 pola, wtedy klauzula 3-field gdzie będzie działać lepiej (ostrzegam, aby wziąć to z ziarnem soli).