эквивалент "SELECT TOP N"
От: jit  
Дата: 10.05.07 12:08
Оценка:
Пишем большое "базо-независимое" приложение, те. которое работает и на MS SQL, и на MySQL, и даже на MS Access.

По ходу дела естественно сталкивались с ОГРОМНЫМ количеством нюансов (например драйвер mySQL и MS SQL по разному маршалят тип bool и тд. и тп.)

Сейчас столкнулись с очередным багом — синтаксис вот такого запроса — "SELECT TOP 10" — везде разный. В Оракле один (ROWCOUNT), в Мускуле другой (LIMIT 10), в MS SQL третий (TOP 10). .. Как бы так извратиться, чтобы написать эту вещь универсально?

Пока дошли только до такого изврата:

SELECT *
FROM Users
WHERE UserID > (MAX(UserID)-10)


Где UserID — первичный ключ. Как вам такой способ? Может еще идеи есть?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.