Sadique KT Ответов: 1

Какой из них является лучшим запросом?


Таблица "гроссбух" содержит огромное количество записей.
Идентификатор учетной записи-FK (не индексируется),
Идентификатор ПК

какой из них является лучшим способом получить более быстрый результат?
Это займет 00:00:01 секунд для обоих запросов

SELECT TOP 1 OpeningBal FROM Ledger
WHERE AccountID=123456 
ORDER BY ID DESC 

ОПЕРАЦИОННАЯ
SELECT OpeningBal FROM Ledger
 WHERE ID = (SELECT MAX(ID) FROM Ledger WHERE AccountID=123456 );


Что я уже пробовал:

SELECT TOP 1 OpeningBal FROM Ledger
WHERE AccountID=123456 
ORDER BY ID DESC 

И
SELECT OpeningBal FROM Ledger
 WHERE ID = (SELECT MAX(ID) FROM Ledger WHERE AccountID=123456 );

Santosh kumar Pithani

"SET STATISTICS IO ON ;SET STATISTICS TIME ON", которые помогут вам узнать, какой запрос занимает меньше времени процессорного времени и затраченного времени.

Sadique KT

Спасибо... вот и родилась идея..

Santosh kumar Pithani

Добро пожаловать

1 Ответов

Рейтинг:
8

RDBurmon

на самом деле первый из них самый лучший

SELECT TOP 1 OpeningBal FROM Ledger
WHERE AccountID=123456 
ORDER BY ID DESC 


и да я бы тоже предложил это сделать

"SET STATISTICS IO ON ;SET STATISTICS TIME ON


Sadique KT

Спасибо...