sql >> Database >  >> RDS >> Mysql

Hoe de verjaardag van VRIENDEN te vinden die vandaag vieren met behulp van PHP en MYSQL

Deze behandelt 29 februari - 1 maart wordt beschouwd als de feestdag in niet-schrikkeljaren.

SELECT u.name
FROM users u INNER JOIN friendships f ON (f.user_id = u.id)
WHERE f.friend_id = 6 -- whatever your id is
    AND (
        MONTH(u.birthdate) = MONTH(NOW())
        AND DAY(u.birthdate) = DAY(NOW())
    ) OR (
        MONTH(c.birthdate) = 2 AND DAY(c.birthdate) = 29
        AND MONTH(NOW()) = 3 AND DAY(NOW()) = 1
        AND (YEAR(NOW()) % 4 = 0)
        AND ((YEAR(NOW()) % 100 != 0) OR (YEAR(NOW()) % 400 = 0))
    )

Omdat ik je tabelstructuur niet heb gezien, heb ik een gok gedaan over hoe je met vriendschapslinks omgaat



  1. SQL:Sorteer op prioriteit, maar zet 0 als laatste

  2. Op zoek naar een viewer voor SQL-transactielogboekbestanden

  3. Datum gebruiken in een controlebeperking, Oracle

  4. C-variabelen doorgeven aan SQL-opdracht