Delphi Can
Order By hatası - Baskı Önizleme

+- Delphi Can (https://www.delphican.com)
+-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3)
+--- Forum: Genel Programlama (https://www.delphican.com/forumdisplay.php?fid=6)
+--- Konu Başlığı: Order By hatası (/showthread.php?tid=7792)



Order By hatası - Altıner - 13-07-2024

Merhaba,

Firebird database kullanıyorum, iki tarih arası arama işleminde ORDER BY kullandığımda altaki hatayı alıyorum. Bu sorunu nasıl çözerim?

Invalid expression in the ORDER BY clause (not contained in either an aggregate function or the GROUP BY clause)'.


      begin
        FDQ.Active := False;
        FDQ.Close;
        FDQ.SQL.Clear;
        FDQ.SQL.Add('Select Count(*) As ID From LIST Where DATES Between :TRI and :TRS');
        FDQ.SQL.Add('And (Title Like ' + QuotedStr('%' + SearchReport.Text + '%'));
        FDQ.SQL.Add('Or Content Like ' + QuotedStr('%' + SearchReport.Text + '%'));
        FDQ.SQL.Add(')');
        // FDQ.SQL.Add('Order By Dates Asc');
        FDQ.ParamByName('TRI').AsDate := CalendarFirst.Date;
        FDQ.ParamByName('TRS').AsDate := CalendarLast.Date;
        FDQ.Prepared := True;
        FDQ.Open;
        if Not FDQ.IsEmpty then // Kayıt varsa
        begin



Cvp: Order By hatası - anemos - 13-07-2024

order by 1;

veya,

order by ID;

olarak deneyin...


Cvp: Order By hatası - RAD Coder - 14-07-2024

(13-07-2024, Saat: 14:50)Altıner Adlı Kullanıcıdan Alıntı: Merhaba,

Firebird database kullanıyorum, iki tarih arası arama işleminde ORDER BY kullandığımda altaki hatayı alıyorum. Bu sorunu nasıl çözerim?

Invalid expression in the ORDER BY clause (not contained in either an aggregate function or the GROUP BY clause)'.


      begin
        FDQ.Active := False;
        FDQ.Close;
        FDQ.SQL.Clear;
        FDQ.SQL.Add('Select Count(*) As ID From LIST Where DATES Between :TRI and :TRS');
        FDQ.SQL.Add('And (Title Like ' + QuotedStr('%' + SearchReport.Text + '%'));
        FDQ.SQL.Add('Or Content Like ' + QuotedStr('%' + SearchReport.Text + '%'));
        FDQ.SQL.Add(')');
        // FDQ.SQL.Add('Order By Dates Asc');
        FDQ.ParamByName('TRI').AsDate := CalendarFirst.Date;
        FDQ.ParamByName('TRS').AsDate := CalendarLast.Date;
        FDQ.Prepared := True;
        FDQ.Open;
        if Not FDQ.IsEmpty then // Kayıt varsa
        begin

Kullandığınız SQL de ne Order By var, ne de Group By var.
Hatanın bu query den kaynaklandığına emin misiniz?