sql >> Databasteknik >  >> RDS >> Mysql

Hur kan jag skapa ett värde från två andra värden i samma tabell i min SQL?

På grund av det faktum att ID:t är en AUTO_INCREMENT du har ingen hand om detta värde. Men det är ganska enkelt. Lägg till en AFTER INSERT trigger till tabellen och låt den uppdatera orderID kolumn efteråt.

Här ett snabbt exempel på en AFTER UPDATE utlösare.

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. Gå med mot resultatet av en array-unnesta utan att skapa en temporär tabell

  2. Node är 20 gånger snabbare än .NET Core vid anslutning till Postgres

  3. Oracle ORA-01805 på Oracle 11g-databas

  4. AbstractMethodError på resultset.getObject