Delphi Can

Orjinalini görmek için tıklayınız: Order By hatası
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
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
order by 1;

veya,

order by ID;

olarak deneyin...
(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?