Jag skulle avråda dig från att lagra datum på det viset. Du kan tex lagra det som ett nummer i form av ÅÅÅÅMM. Men om du absolut måste göra som du gör, kan du göra t ex så här:
SELECT *
FROM tabell
WHERE År <= (SELECT år FROM tabell WHERE id=42)
OR (år = (SELECT år FROM tabell WHERE id=42)
AND vecka <= (SELECT vecka FROM tabell WHERE id=42) )
ORDER BY år DESC, vecka DESC
Går nog att få bort de fula sub-selectarna genom att hämta ut det datat i förväg.
Jag skulle avråda dig från att lagra datum på det viset. Du kan tex lagra det som ett nummer i form av ÅÅÅÅMM. Men om du absolut måste göra som du gör, kan du göra t ex så här:
SELECT *
FROM tabell
WHERE År <= (SELECT år FROM tabell WHERE id=42)
OR (år = (SELECT år FROM tabell WHERE id=42)
AND vecka <= (SELECT vecka FROM tabell WHERE id=42) )
ORDER BY år DESC, vecka DESC
Går nog att få bort de fula sub-selectarna genom att hämta ut det datat i förväg.
Nja du menar väl?
SELECT *
FROM tabell
WHERE År < (SELECT år FROM tabell WHERE id=42)
OR (år = (SELECT år FROM tabell WHERE id=42)
AND vecka <= (SELECT vecka FROM tabell WHERE id=42) )
ORDER BY år DESC, vecka DESC