Eftersom jag nu för tillfället saknar någon att bolla idéer med, så undrar jag hur ni skulle ha löst följande problem:
Ni har en matris som består av
Vecka
Distrikt (antal under veckan)
Hur som helst så kan man boka in en banner (annons) på hemsidan i alla län eller enstaka län under varje önskad veckoperiod.
Dessa banners kopplas till ett schemaid som kopplas till varje läns id i en kopplingstabell.
Att slumpa fram banners som är kopplad till ett län är inga problem, men att slumpa fram visst antal banners som är kopplade till ALLA län, är problem för mig..
Tabeller och deras koppling.
Banners <-bannerid-> bannerschema <- bannerschemaid -> bannerschema_distrikt <- distriktid-> distrikt
bannerschema_distrikt
id | bannerschemaid | distriktid
distrikt
distriktid | namn
okei, där av den väsentliga tabell strukturen. En banner som är kopplad till alla län har en post i bannerschemat, och denna post refererar till alla län i bannerschema_distrikt genom att där finns en rad för varje län som den är kopplad till.
dessa banners visas som är kopplade till alla län visas, ex. när besökaren väljer att söka/se vissa saker inom ett län, ex. om man söker på blocket i norrbotten så visas endast de annonser/banners som är kopplade till norrbotten under den tidsperioden som dagensdatum finns inom.
Men väljer du att söka inom hela sverige, så skall ENDAST de annonser/banners som är kopplade till ALLA län, dvs en rad för varje län i bannerschema_distrikt under den aktuella tidsperioden som dagensdatum finns inom..
Har känslan att jag måste plocka ut alla län i en array, och sedan alla schemalagda banners under den perioden för att sedan jämföra vilka av dessa som har antalet län som matchar med arrayn ..
Jag antar att det är en SQL-fråga inblandad där du har
WHERE distriktid=@distriktid
el. likn. När det gäller en sökning för alla län så får du helt enkelt ta bort det villkoret och DISTINCT/GROUP BY:a på bannerid, så att samma banner inte dyker upp flera gånger (för olika län)
Jag antar att det är en SQL-fråga inblandad där du har
WHERE distriktid=@distriktid
el. likn. När det gäller en sökning för alla län så får du helt enkelt ta bort det villkoret och DISTINCT/GROUP BY:a på bannerid, så att samma banner inte dyker upp flera gånger (för olika län)
Så långt tänkte jag också, men då kommer även dem som endast har bokat upp sig i ett län.. och därmed bör synas i endast det länet och ej när "ALLA" ses är sökning..
men iofs så kan jag ju alltid låta det vara så, tills vidare..
Ett enkelt alternativ är ju att skapa låtsaslänet "Alla". Annars måste du göra en SQL-fråga som kontrollerar att COUNT(DISTINCT distriktid)=21
ja det är ju enklaste alternativet, men har inte den förutsättningen, iom att schemat bygger på en matris med distrikten, veckor och antalet bokningar.