Mailinglisten-Archive |
Michael Borchers schrieb: > Habe folgende (gekürzte) Query und Tabelle: > SELECT cf.fee_total, MIN( cf.fee_order ) AS min_order, cf.fee_order > FROM ( > contacts_fees AS cf > ) > WHERE 1 > AND cf.fee_date = '0000-00-00' > GROUP BY cf.contacts_id > HAVING MIN( fee_order ) > > Tabelle > > fee_order fee_total fee_date > 1 250.00 2007-09-17 > 2 240.00 2007-09-14 > 2 250.00 2007-09-14 > 3 250.00 0000-00-00 > 4 250.00 0000-00-00 > 5 250.00 0000-00-00 > 6 357.00 0000-00-00 > 7 250.00 0000-00-00 > > > Ziel ist es, die kleinste "fee_order" und den dazugehörigen 'fee_total' zu bekommen, > bei dem das Datum noch 0000-00-00 ist. äh, was spricht dann gegen: SELECT * FROM cf WHERE cf.fee_date = '0000-00-00' ORDER BY cf.fee_order ASC (LIMIT 1); > Am einfachsten wäre es natürlich mit ORDER BY cf.fee_order ASC LIMIT 1, > allerdings brauche ich mehrere Datensätze, daher schon einmal kein LIMIT. Was jetzt den niedrigsten oder nicht? Dann lass das LIMIT halt weg oder nimm einen hören Wert als 1 > Ausserdem muss ich später noch nach anderen Feldern sortieren können, daher > brauche ich die ORDER BY noch. ja, kannste ja einfach hinten dran hängen ... also ohne zu wissen was du nun eigentlich brauchst/willst kann man dir schlecht helfen ... -- Sebastian
php::bar PHP Wiki - Listenarchive