sql >> Database teknologi >  >> RDS >> Mysql

Hvordan kan jeg oprette en værdi ud fra to andre værdier i samme tabel i min SQL?

På grund af det faktum, at id'et er en AUTO_INCREMENT du har ingen hånd på denne værdi. Men det er ret simpelt. Tilføj en AFTER INSERT trigger til tabellen og lad den opdatere orderID kolonne bagefter.

Her er et hurtigt eksempel på en AFTER UPDATE udløser.

CREATE TRIGGER yourTrigger
AFTER INSERT
   ON yourTable FOR EACH ROW

BEGIN
    UPDATE yourTable
    SET orderid = CAST(date as char(4)) + CAST(id as char(1))
    WHERE ID = NEW.id

END; 


  1. MySQL vælg rækker, hvor dato ikke er mellem dato

  2. PostgreSQL unnest() med elementnummer

  3. mysql GROUP_CONCAT

  4. Oracle:kopier række, mens du opdaterer ét felt