sql >> Databáze >  >> RDS >> Mysql

Podmíněné vložení MySql s dynamickými hodnotami

Místo spouštěče můžete napsat svůj vlastní prostý dotaz, abyste před vložením zkontrolovali „omezení“. Zkuste:

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)

Zvykl jsem si kontrolovat v případě Type_ID =5. Toto ignoruje, pokud není splněno kritérium počtu, a vloží se pouze v případě, že počet členů položek v member_info s typem id =5 je menší než limit nastavený ve vašich member_types tabulka



  1. Nově přiřazená sekvence nefunguje

  2. Je možné nastavit časový limit pro SQL dotaz na Microsoft SQL Server?

  3. Co jsou výpisy připravené na straně klienta?

  4. Při seskupování podle maximální hodnoty vyberte různé řádky