Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Firebird SQL verbessern

Dieses Thema im Forum "Firebird und Interbase" wurde erstellt von freedamo, 26 November 2015.

  1. freedamo

    freedamo Benutzer

    Hi!

    Folgende Abfrage lässt die CPU unseres DB-Servers auf fast 80% ansteigen... es dauert einige Minuten bis er sich wieder erholt ;) .

    Was kann ich hier optimieren - Außer dem Datum eingrenzen :D ?

    Select BELEGTYP, BELEGART, BELEGNR, BELEGDAT, PERSONAL,
    PERSNAME, KZAUSDRUCK
    from BELEG
    where (KZAUSDRUCK = '0'
    or KZAUSDRUCK = 'N'
    or KZAUSDRUCK = '')
    and BELEGTYP = 'V'
    and BELEGART in ('RE','GU','LI','MA')
    and getdate(BELEGDAT) >= '01.01.2000'
    order by BELEGDAT desc


    Vielen Dank für eure Mühe!
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Was sagt Expplain? Hat Firebird Explain?

    Du solltest passende Indexe haben, die Spalten in der Where-Condition wären gute Kandidaten ...
     
  3. ukulele

    ukulele Datenbank-Guru

    Vor allem BELEGDAT
     
  4. Distrilec

    Distrilec Datenbank-Guru

    Ganz normal... Da eine Datenbank immer versucht Daten so schnell wie möglich zu liefern, werden natürlich auch alle verfügbaren Ressourcen verwendet...
    Egal was du für ein Statement baust, das deine CPU eine hohe Auslastung hast wirst du nicht verhindern können... ;)

    Das einzige was du machen kannst ist die Durchlaufzeit reduzieren...
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden