sql >> Databasteknik >  >> RDS >> Mysql

MySql conditional Insert med dynamiska värden

Istället för en trigger kan du skriva din egen vanliga fråga för att kontrollera "begränsningarna" innan du infogar. Försök:

INSERT INTO member_infos
SELECT      1, 'Timothy', 'secret', '[email protected]', 5, 0
FROM        dual
WHERE       (SELECT COUNT(*) FROM member_infos WHERE Type_ID = 5) 
            < 
            (SELECT Member_Limit FROM member_types WHERE ID = 5)

Jag har brukat kontrollera i fallet med Type_ID =5. Detta ignorerar om räknekriteriet inte är uppfyllt och infogas endast om antalet medlemmar av poster i member_info med typ id =5 är mindre än gränsen som anges i dina member_types bord



  1. Java kör inte prepare-satser med parameter

  2. Lägg till en främmande nyckelrelation mellan två databaser

  3. SQL-fråga för att hitta post med ID som inte finns i en annan tabell

  4. Hur man väljer jämförelse av två kolumner som en kolumn i Oracle