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

SQL-Performance verbessern (Ingress/OBCD)

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von lerxx, 14 Januar 2019.

  1. lerxx

    lerxx Neuer Benutzer

    Hallo liebe Community,


    ich arbeite derzeit an einer Homepage, bei der ich anhand von verschiedenen Datenbankabfragen Statistiken darstellen will. Nun ist es aber so, dass die Homepage so um die 2 Minuten zum laden braucht, woraufhin ich die performance verbessern will. Vielleicht bringt es einzelne Abfragen zu verbessern.

    Zu meiner Frage: Dauert das rechnen innerhalb einer Datenbankabfrage länger als im php-code bspw.?

    Hier der Code von bisher:

    Code:
    $status_dep = Yii::$app->db->createCommand("select a, b, (count(c)* 100 / (select count(*) From database where a = 'CH')) as percentage
                from database
                where dep = 'CH' and crd > '2017-10-10'
                group By a, b
                order by a")
                ->queryAll();
     
  2. akretschmer

    akretschmer Datenbank-Guru

    das geht fast immer in der Datenbank schneller als z.B. in PHP. Vermutlich gilt das sogar bei MySQL, was ich aber nicht nutze. Was sagt denn EXPLAIN zu Deiner Abfrage?
     
  3. lerxx

    lerxx Neuer Benutzer

    Danke für die schnelle Rückmeldung und die Info. Was meinst du mit EXPLAIN?
     
  4. akretschmer

    akretschmer Datenbank-Guru

  5. akretschmer

    akretschmer Datenbank-Guru

    man sollte vielleicht noch erwähnen, daß das MySQL-EXPLAIN dageben schlicht Schrott ist. MySQL hat solche Konzepte wie einen kostenbasierten Planner nicht und die EXPLAIN-Ausgabe ist, ähm, nun ja. Quasi ein Brechmittel.
     
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