Kasper Kamp Simonsen skrev:
> SELECT * FROM table
> WHERE
> (http_refererid.http_referer LIKE '%soeg.jubii.dk%') OR
> (http_refererid.http_referer LIKE '%verden.jubii.dk%') OR
> (http_refererid.http_referer LIKE '%super.jubii.dk%')
>
> Nu kunne jeg godt tænke mig at tælle hvormange entrys der
> passede på hver af de tre LIKE's, nogen som kan fortælle mig
> hvordan jeg gør det?
Du kan formentlig bruge CASE:
SELECT COUNT(*) as antal,
CASE
WHEN http_referer LIKE '%soeg.jubii.dk%' THEN 'soeg'
WHEN http_referer LIKE '%verden.jubii.dk%' THEN 'verden'
WHEN http_referer LIKE '%soeg.jubii.dk%' THEN 'super'
ELSE 'tom'
END as gruppe
FROM http_refererid
WHERE (http_refererid.http_referer LIKE '%soeg.jubii.dk%') OR
(http_refererid.http_referer LIKE '%verden.jubii.dk%') OR
(http_refererid.http_referer LIKE '%super.jubii.dk%')
GROUP BY
CASE
WHEN http_referer LIKE '%soeg.jubii.dk%' THEN 'soeg'
WHEN http_referer LIKE '%verden.jubii.dk%' THEN 'verden'
WHEN http_referer LIKE '%soeg.jubii.dk%' THEN 'super'
ELSE 'tom'
END as gruppe
Hvis du lægger CASE-funktionen ind i et view kan du slippe for at
skrive den to gange.
--
Jens Gyldenkærne Clausen
MF (medlem af FIDUSO -
www.fiduso.dk)
I ovenstående tekst benyttes nyt komma
(rettelser modtages gerne i dk.kultur.sprog)