>
>
> Unfortunately, AFAICT, MS-SQL does not have an OFFSET clause (it uses
> TOP instead of LIMIT). How does SQLA handle this situation?
>

For mssql2005 and higher, (those versions of mssql that support window
functions using OVER,  row_number(), rank(), etc.), we simulate an OFFSET by
wrapping the query with an outer query, and using "where row_number() >=
offset and row_number() < offset + limit"

For mssql 2000 and lower, you'll be limited to use of LIMIT, and the mssql
dialect will know to use "TOP" instead of the "LIMIT" syntax.

For this to work in SA 0.4 and 0.5, you'll need to add the engine keyword
"has_window_funcs=1" to your connection string. From what I understand, SA
0.6+ will sniff out the mssql version and automatically toggle the behavior.

Rick

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to