PHP/SQL: Sortierung innerhalb einer do-while Schleife
PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 14:57:28 von Karsten Jacob
Hi NG.
Folgendes Problem:
Ich habe zwei Abfrage:
1.
$query_kartennummer = sprintf("SELECT kartennummer FROM tankdaten GROUP
BY kartennummer");
$kartennummer = db_query($query_kartennummer);
$row_kartennummer = mysql_fetch_assoc($kartennummer);
2.
Innerhalb des Auswahlmenüs werden jetzt die Zugnummern in der
Reihenfolge der davon abhängigen Kartennummern angezeigt.
Ich möchte aber gerne die Zugnummern aufsteigend innerhalb des
Auswahlmenüs sortieren.
Geht das überhaupt?
Gruß,
Karsten
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 15:04:34 von Tobias Kutzler
Karsten Jacob schrieb:
> 1.
> $query_kartennummer = sprintf("SELECT kartennummer FROM tankdaten GROUP
> BY kartennummer");
> $kartennummer = db_query($query_kartennummer);
> $row_kartennummer = mysql_fetch_assoc($kartennummer);
> 2.
>
>
> Innerhalb des Auswahlmenüs werden jetzt die Zugnummern in der
> Reihenfolge der davon abhängigen Kartennummern angezeigt.
>
> z.b.
> Kartennummer 1 - Zugnummer 257
> Kartennummer 2 - Zugnummer 100
> Kartennummer 3 - Zugnummer 111
> Kartennummer 4 - Zugnummer 102
> Kartennummer 5 - Zugnummer 144
> Kartennummer 6 - Zugnummer 139
>
> Ich möchte aber gerne die Zugnummern aufsteigend innerhalb des
> Auswahlmenüs sortieren.
Dann mach nur eine Abfrage mit einem ORDER BY:
SELECT zugnummer, kartennummer FROM lkw ORDER BY kartennummer
Ciao,
Tobias
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 15:06:19 von thborsdorf
Hallo Karsten!
Karsten Jacob schrieb am 02.08.2006 14:57:
> Ich möchte aber gerne die Zugnummern aufsteigend innerhalb des
> Auswahlmenüs sortieren.
> Geht das überhaupt?
SELECT zugnummer FROM lkw WHERE zugnummer in (
SELECT kartennummer FROM tankdaten GROUP BY kartennummer
) ORDER BY zugnummer;
> $query_kartennummer =
> sprintf("SELECT kartennummer FROM tankdaten GROUP BY kartennummer");
Wieso nicht
$query_kartennummer = "SELECT kartennummer FROM tankdaten GROUP BY
kartennummer";
> Gruß,
> Karsten
MfG Thomas.
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 15:08:53 von Tobias Kutzler
Karsten Jacob schrieb:
> 1.
> $query_kartennummer = sprintf("SELECT kartennummer FROM tankdaten GROUP
> BY kartennummer");
> $kartennummer = db_query($query_kartennummer);
> $row_kartennummer = mysql_fetch_assoc($kartennummer);
> 2.
>
>
> Innerhalb des Auswahlmenüs werden jetzt die Zugnummern in der
> Reihenfolge der davon abhängigen Kartennummern angezeigt.
>
> z.b.
> Kartennummer 1 - Zugnummer 257
> Kartennummer 2 - Zugnummer 100
> Kartennummer 3 - Zugnummer 111
> Kartennummer 4 - Zugnummer 102
> Kartennummer 5 - Zugnummer 144
> Kartennummer 6 - Zugnummer 139
>
> Ich möchte aber gerne die Zugnummern aufsteigend innerhalb des
> Auswahlmenüs sortieren.
Dann mach nur eine Abfrage mit einem ORDER BY:
SELECT zugnummer, kartennummer FROM lkw ORDER BY kartennummer, zugnummer
Ciao,
Tobias
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 16:12:43 von Karsten Jacob
Tobias Kutzler schrieb:
> Karsten Jacob schrieb:
>> 1.
>> $query_kartennummer = sprintf("SELECT kartennummer FROM tankdaten
>> GROUP BY kartennummer");
>> $kartennummer = db_query($query_kartennummer);
>> $row_kartennummer = mysql_fetch_assoc($kartennummer);
>> 2.
>>
>>
>> Innerhalb des Auswahlmenüs werden jetzt die Zugnummern in der
>> Reihenfolge der davon abhängigen Kartennummern angezeigt.
>>
>> z.b.
>> Kartennummer 1 - Zugnummer 257
>> Kartennummer 2 - Zugnummer 100
>> Kartennummer 3 - Zugnummer 111
>> Kartennummer 4 - Zugnummer 102
>> Kartennummer 5 - Zugnummer 144
>> Kartennummer 6 - Zugnummer 139
>>
>> Ich möchte aber gerne die Zugnummern aufsteigend innerhalb des
>> Auswahlmenüs sortieren.
>
> Dann mach nur eine Abfrage mit einem ORDER BY:
>
> SELECT zugnummer, kartennummer FROM lkw ORDER BY kartennummer, zugnummer
Wie soll das gehen? zugnummer und kartennummer sind in zwei
verschiedenen Tabellen.
Gruß,
Karsten
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 16:19:23 von Karsten Jacob
Borsdorf, Thomas schrieb:
> Hallo Karsten!
>
> Karsten Jacob schrieb am 02.08.2006 14:57:
>> Ich möchte aber gerne die Zugnummern aufsteigend innerhalb des
>> Auswahlmenüs sortieren.
>> Geht das überhaupt?
>
> SELECT zugnummer FROM lkw WHERE zugnummer in (
> SELECT kartennummer FROM tankdaten GROUP BY kartennummer
> ) ORDER BY zugnummer;
>
> > $query_kartennummer =
> > sprintf("SELECT kartennummer FROM tankdaten GROUP BY kartennummer");
>
Dankeschön Thomas, das isses.
Tüs,
Karsten
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 16:25:09 von Sebastian Wessel
Karsten Jacob schrieb:
> Tobias Kutzler schrieb:
>> Karsten Jacob schrieb:
>> Dann mach nur eine Abfrage mit einem ORDER BY:
>>
>> SELECT zugnummer, kartennummer FROM lkw ORDER BY kartennummer, zugnummer
>
> Wie soll das gehen? zugnummer und kartennummer sind in zwei
> verschiedenen Tabellen.
Dann schreib halt "SELECT lkw.zugnummer, tankdaten.kartennummer ORDER BY
tankdaten.kartennummer, lkw.zugnummer"
ungetestet und wahrscheinlich noch mit einem kleinen Fehler - ich weiß
grad nicht ob da ein "FROM xxx" reinmuss in die Abfrage.
LG
Re: PHP/SQL: Sortierung innerhalb einer do-while Schleife
am 02.08.2006 16:30:17 von Tobias Kutzler
Karsten Jacob schrieb:
>> Dann mach nur eine Abfrage mit einem ORDER BY:
>>
>> SELECT zugnummer, kartennummer FROM lkw ORDER BY kartennummer, zugnummer
>
> Wie soll das gehen? zugnummer und kartennummer sind in zwei
> verschiedenen Tabellen.
Dann nochmal ne Frage von mir: Wie sind die Tabellen lkw und tankdaten
miteinander verknüpft und welche Spalten besitzen Sie?
Denn wenn diese Abfrage die gewünschten Daten liefert, dann ist Dein DB
Design kaputt, da Du hier zugnummer mit kartennummer verknüpfst:
$query_zugnummer = sprintf("SELECT zugnummer FROM lkw WHERE
zugnummer = '".$row_kartennummer['kartennummer']."'");
Sprich: Du liest mit diesem Statement alle Zugnummern aus, die als
Kartennummer vorhanden sind. Bin ich etwas verwirrt.