Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Przekonanie serwera SQL do wyszukiwania wstecz w indeksie klastrowym w poszukiwaniu schematu tylko do wstawiania

SQL Server nie może utworzyć takiego planu zapytań od 2012 r. Przepisz zapytanie:

SELECT ids.feeditem_id, MaxID
FROM (VALUES (827), (815), (806)) ids(feeditem_id)
CROSS APPLY (
 select TOP 1 ID AS MaxID
 from spotquote sq
 where sq.feeditem_id = ids.feeditem_id
 ORDER BY ID DESC
) x

Skutkuje to planem, który przeszukuje spotquote tabeli na identyfikator, który określisz. To najlepsze, co możemy zrobić. SQL Server nie może przerwać agregacji, gdy wszystkie zainteresowane grupy mają przynajmniej jedną wartość.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Generuj instrukcje CREATE INDEX w SQL Server

  2. Jak używać JOIN zamiast UNION do liczenia sąsiadów A LUB B?

  3. SQL Server — najlepszy sposób na uzyskanie tożsamości wstawionego wiersza?

  4. Kolumna z funkcją DEFAULT, przekazać parametr lub określić wstawić wartości?

  5. Składnia zapytania aktualizującego SQL z wewnętrznym sprzężeniem