Ja, faktisk kan spørgsmålet også ligge under php, for det kan måske også løses via det, men nu valgte jeg altså at ligge det her.
Jeg har en query, som fungere næsten perfekt. Data kommer ud, men brugeren af systemet, vil bare gerne have sorteringen på en anden måde, end standarden i MySQL. Faktisk har jeg et datofelt, som kan være udfyldt med en reel dato eller 0000-00-00.
Brugeren vil så gerne i en oversigt, have sorteret data, så f.eks. dato kommer stigende, men med de ordre som ingen dato her sidst. Derudover skal jeg bruge samme sortering på en del tinytext felter.
Oprindelig ser queryen sådan ud:
($search er en variable, hvis brugeren vil specificere søgningen, den kan sagtens undværes, så fjern den eventuelt.
$sort er så hvis brugeren vil have en bestemt sortering, f.eks. på dato. Dette forgår ved at brugeren klikker på et link, som så sender den specifikke søgning til "sig selv", så det kan komme med i query, første gang/standard skal den sortere på felt o5.r533c)
SELECT o.id as id, o.ordre as ordre, o.rev as rev, YEAR(o5.r533c) as levaar, WEEKOFYEAR(o5.r533c) as levuge, o0.r1 as projektleder, o0.r9 as kunde, o0.r18 as bygherre, o5.r541, o5.r541a, o5.r542, o5.r546, o5.r543, o5.r547, o5.r544, o5.r548, o5.r552, WEEKOFYEAR(o5.r555) AS tegnuge, YEAR(o5.r555) AS tegnaar, o5.r572 FROM ordre AS o, ordre0 AS o0 LEFT JOIN ordre5 AS o5 ON o0.tilbudsnummer=o5.tilbudsnummer WHERE o0.tilbudsnummer=o.id && (o5.r534=0 || o5.r534 IS NULL) && o5.r534a = 0 $search ORDER BY $sort, o.id ASC
Jeg har også spørgsmålet stående på Eksperten.dk, men der er vedkommende som hjælper mig ved at køre noget fast, så derfor håber jeg der er nogle herinde som kan trylle lidt. Da Eksperten pt. er nede, kan jeg ikke lige komme med et link, men det skal nok komme hurtigst muligt.
Kan det løses via php, er denne løsning også meget velkommen.
|