[SQL allgemein] Zwei SQL Abfragen zu einer verschmelzen

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

  • [SQL allgemein] Zwei SQL Abfragen zu einer verschmelzen

    hallo

    ich habe in einer tabelle mehrere datensätze stehen, hier möchte ich nun zuerst alle auslesen, die mit der katnr 1 beginnen, dann mit der 2,3 usw und diese sollen nach der der spalte "pos_vor" sortiert werden.
    so kann ich die positionen der einzelnen datensätze mit einem button verändern und die veränderte reihenfolge ausgeben.

    PHP-Code:
    $result_kategorie mysql_query'SELECT katnr from kategorie ' );    
            
    while (
    $row_kategorie mysql_fetch_row ($result_kategorie)) {
            
                
    $result mysql_query'SELECT
                            
                        contentnr, 
                        pos_vor, 
                        pos_nach, 
                        status, 
                        katnr, 
                        autornr,
                        titel,
                        beschreibung
                                                    
                        from content where katnr =  '
    .$row_kategorie[0].' order by pos_vor asc' );

    while (
    $row mysql_fetch_row ($result)) {
    .....
    ausgabe.... 
    }} 
    meine Frage ist nun, kann ich in der diese abfrage auch nur in einem select ausführen?
    was wichtig ist, dass die zuerst alle datensätze mit der katnr=1( dann katnr 2, katnr 3, usw) und diese dann nach der "pos_vor" sortiert ausgeben werden!

    mit den zwei abfragen kann ich das blättern über mehrere seiten nicht verwirklichen...

    danke
    Zuletzt geändert von hdmnf; 04.09.2007, 14:08.

  • #2
    sowas ähnliches hab ich mal gemacht, mit INNER Joins...

    ist schon länger her, darum hab ich den code hier nichtmehr.

    Aber such mal nach JOINs
    Tempim.de - Dein kostenloser Bildhoster
    Tipps und Tricks für Webmaster

    Kommentar


    • #3
      hm, nein mit nem join kann ich doch nur werte verschiedener tabellen z.b. miteinander vergleichen...aber ich will aus einer tabelle die datensätze nach zwei kriterien ausgeben.

      Kommentar


      • #4
        Ist natürlich zimlicher unfug zuerst alle ids zu holen und dann nochmal zu jeder id die entsprechenden datensätze. das kannst du in der Tat in einer Query machen:

        SELECT FROM tab ORDER BY katnr, katnr

        Fertig.

        Zum schöneren Formatieren guckst du dir den Gruppenwechsel an.

        mit nem join kann ich doch nur werte verschiedener tabellen...
        Der vollständigkeit halber korrigiere ich noch kurz. Man kann natürlich auch zwei mal die selbe Tabelle nutzen. Das kann u.U. sogar nützlich sein. Nur ist das bei dieser Fragestellung total fehl am Platz.
        Zuletzt geändert von TobiaZ; 29.06.2008, 15:50.

        Kommentar


        • #5
          funktioniert, DANKE!!!

          du meintest bestimmt "...oder by katnr, pos_vor..."

          Kommentar


          • #6
            japp, genau!

            gibt noch ein dazu, weil du der erste bist, der mich heute davon überzeugt hat, dass er wirklich mitgedacht hat. Danke! Und das zu fortgeschrittener Stunde.

            *freu*

            Kommentar

            Lädt...
            X