metamodel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kasper Sørensen <i.am.kasper.soren...@gmail.com>
Subject Re: Error while using max rows with distinct in MSSQL
Date Fri, 30 May 2014 08:25:18 GMT
Yuck. I really dislike SQL Servers' "TOP n" prefix ... for this same reason
... But whatever, we can't change that, so we better change our code :-D

I think it sounds like an obvious bugfix in SQLServerQueryRewriter, quite
similar to the recent thing about datetime literals. Would you be able to
help again Balendra?


2014-05-30 9:02 GMT+02:00 Balendra Singh <balendrasingh@gmail.com>:

> Hi,
>
> I am using MSSQL to fetch the records with max rows defined and distinct as
> true also for the select clause as following -
>
> *Query q = new
> Query().from(table).selectDistinct().select(column).setMaxRows(20);*
>
> So it is throwing* Incorrect syntax near the keyword 'DISTINCT'* error.
> I debugged the code and found that
> in SQLServerQueryRewriter.rewriteSelectClause(), we are appending TOP 20
> after the select keyword so with distinct it becomes *select TOP
> 20 DISTINCT <rest query>* which is not correct.
> It should be *select DISTINCT TOP 20 <rest query>*.
>
> Please provide your input on this.
>
>
> Thanks,
> Balendra
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message