Ik werk met een muziekautomatiseringssoftware voor radiostations, elk nummer wordt met een complex query geselecteerd. echter wil ik 1 query schrijven met verschillende mogelijkheden.. de losse scripts heb ik al, het gaat me puur om het stukje script om tussen specifieke data een van de 3 mogelijkheden te laten starten en de andere dus niet te laten uitvoeren! De software die ik gebruik kan niet een script op bepaalde data laten runnen.
mogelijkheid 1 = normale muziek (van 1-9 t/m 5-12 en van 27-12 t/m 30-4)
mogelijkheid 2 = Kerst muziek (Van 6-12 t/m 26-12)
mogelijkheid 3 = Zomer muziek (Van 1-5 t/m 31-8)
Ik heb voor alle 3 de mogelijkheden aparte scripts geschreven nu. ik zal 1 voorbeeld onderaan plaatsen...
mijn uitdaging is nu dus om 1 script te schrijven waarin ik alle 3 de opties heb verwerkt en dat deze opties op de juiste datum wordt gerund. (je wilt in de zomer toch geen kerstmuziek horen ;) )
Hopelijk kan iemand me helpen met deze uitdaging!
Het standaard script voor mogelijkheid 1 normale muziek (Deze werkt en hoeft dus niet aangepast te worden):
SELECT * FROM (
(SELECT `songs`.`ID`, `songs`.`artist`, `songs`.`title`, `songs`.`date_played`, `songs`.`artist_played`,`songs`.`id_subcat`, `songs`.`weight`, 1 AS `preference` FROM `songs`
LEFT JOIN `queuelist` ON ( `songs`.`artist` = `queuelist`.`artist`)
WHERE `songs`.`enabled` = 1
AND `songs`.`song_type` = 0
AND `songs`.`id_subcat` = 68
AND `songs`.`id_genre` = 99
AND (TIMESTAMPDIFF(MINUTE, `songs`.`date_played`, NOW()) > $TrackRepeatInterval$)
AND (TIMESTAMPDIFF(MINUTE, `songs`.`artist_played`, NOW()) > $ArtistRepeatInterval$)
AND `queuelist`.`artist` IS NULL
AND `weight`=75
ORDER BY RAND ()
LIMIT 20)
ORDER BY `date_played` asc
LIMIT 20
)
temp
ORDER BY `date_played` asc
LIMIT 1;
2.061 views