Was ist schneller: Sql-abfrage oder Auslesen eines Arrays?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Was ist schneller: Sql-abfrage oder Auslesen eines Arrays?

    Hallo!

    Ich möchte aus einer MySQL-DB 100 Datensätze auslesen und in einer Tabelle ausgeben lassen. Das ist ja nur eine SQL-Abfrage. Jeweils zwei Attribute sind Fremdschlüssel, in der ich in einer anderen Tabelle den Namen abfragen muss -> also 2 x 100 SQL-Abfragen.

    Wäre es sinnvoller, wenn ich die Daten vorher in ein Array schreibe und dort Abfrage? Ist das vielleich schneller?

  • #2
    frag das alles in einer abfrage ab, wie steht im sql-forum, wohin du hiermit geschoben wurdest
    Zuletzt geändert von mrhappiness; 22.03.2004, 08:40.
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Vielleicht kann mir einer sagen, was ich da besser machen könnte:

      PHP-Code:
      $quelle mysql_query("SELECT ticket_nr, kategorie, beschreibung, abteilung,
      DATE_FORMAT(datumuhrzeit,'%d.%m.%Y, %H:%i:%s') AS datumuhrzeit,
      prioritaet FROM ticket ORDER BY ticket_nr DESC LIMIT 30"
      );

      $zeilen mysql_num_rows($quelle);

      echo(
      "<table width=\"100%\" cellspacing=\"0\">");

      for(
      $z=0$z $zeilen$z++)
      {
      echo(
      "<tr>");
      if(
      $z 0)
      echo(
      "gerade");
      else
      echo(
      "ungerade");
      echo(
      "\">");
      $ticket_nr mysql_result($quelle$z"ticket_nr");
      echo(
      "<td>$ticket_nr</td>");

      $kat_nr mysql_result($quelle$z"kategorie");
      $abfrage mysql_query("SELECT kat_name FROM kategorie WHERE kat_nr = \"$kat_nr\"");
      echo(
      "<td>");
      echo(
      mysql_result($abfrage0"kat_name"));
      echo(
      "</td>");

      echo(
      "<td>");
      echo(
      mysql_result($quelle$z"beschreibung"));
      echo(
      "</td>");

      $abt_nr mysql_result($quelle$z"abteilung");
      $abfrage mysql_query("SELECT abt_name FROM abteilung WHERE abt_nr = \"$abt_nr\"");
      echo(
      "<td>");
      echo(
      mysql_result($abfrage0"abt_name"));
      echo(
      "</td>");

      echo(
      "<td>");
      echo(
      mysql_result($quelle$z"datumuhrzeit"));
      echo(
      "</td>");

      echo(
      "<td>");
      echo(
      mysql_result($quelle$z"prioritaet"));
      echo(
      "</td>");

      echo(
      "</tr>");
      }
      echo 
      "</table>"

      EDIT:
      umbrüche by Abraxax
      Zuletzt geändert von Abraxax; 22.03.2004, 11:43.

      Kommentar


      • #4
        Original geschrieben von mirko2000
        Vielleicht kann mir einer sagen, was ich da besser machen könnte:
        beschäftige dich mit JOIN (siehe auch sticky thread hier in diesem forum), um folgende drei abfragen zu einer zusammenzufassen:

        "SELECT ticket_nr, kategorie, beschreibung, abteilung, DATE_FORMAT(datumuhrzeit,'%d.%m.%Y, %H:%i:%s') AS datumuhrzeit, prioritaet FROM ticket ORDER BY ticket_nr DESC LIMIT 30"

        "SELECT kat_name FROM kategorie WHERE kat_nr = \"$kat_nr\""

        "SELECT abt_name FROM abteilung WHERE abt_nr = \"$abt_nr\""
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Ich hab den Code jetzt schon mal verbessern können:

          PHP-Code:
          $quelle mysql_query("SELECT ticket_nr, kategorie.kat_name, beschreibung, abteilung.abt_name,
          DATE_FORMAT(datumuhrzeit, '%d.%m.%Y, %H:%i:%s') AS datumuhrzeit,
          prioritaet FROM ticket, kategorie, abteilung
          WHERE ticket.kategorie = kategorie.kat_nr AND ticket.abteilung = abteilung.abt_nr
          ORDER BY ticket_nr DESC"
          );

          while((
          $zeile mysql_fetch_array($quelleMYSQL_NUM)) == true)
          {
             echo(
          "<tr>");
             for(
          $i=0$i <= 5$i++)
             {
                echo(
          "<td>$zeile[$i]</td>");
             }
             echo(
          "</tr>");

          Gibt es sonst noch was zu verbessern?


          EDIT:
          umbrüche by Abraxax
          Zuletzt geändert von Abraxax; 22.03.2004, 11:43.

          Kommentar


          • #6
            Original geschrieben von mirko2000
            Gibt es sonst noch was zu verbessern?
            ja. mache mal nicht so lange zeilen, wenn du hier postest.
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar

            Lädt...
            X