Avatar billede htx98i17 Professor
18. januar 2004 - 14:16 Der er 6 kommentarer og
1 løsning

REPLACE, og brug af værdi fra samme record

REPLACE INTO tbl (col1,col2) ('$var1','$var2+col2')

jeg vil altså have at værdi nummer 2 (col2) som er et tal, skal ligges sammen med $var2.

Men det kan sikkert ikke lade sig gøre, kun ved en UPDATE? eller en SELECT først...

men vil jo helst lave det så enkelt som muligt...
Avatar billede htx98i17 Professor
18. januar 2004 - 14:17 #1
REPLACE INTO tbl (col1,col2) VALUES ('$var1','$var2+col2')
selvfølgelig... bare et ekspempel...
Avatar billede Slettet bruger
18. januar 2004 - 14:24 #2
Kan denne bruges?

UPDATE tbl SET col1='$var1', col2='$var2+col2' WHERE 1
Avatar billede arne_v Ekspert
18. januar 2004 - 14:24 #3
UPDATE tbl SET col1=X, col2=Y+col2;
Avatar billede Slettet bruger
18. januar 2004 - 14:25 #4
Nåja, gnyfferne uden om col2-tildelingen skal nok fjernes.
Avatar billede limemedia Nybegynder
18. januar 2004 - 14:26 #5
REPLACE works exactly like INSERT, except that if an old record in the table has the same value as a new record on a UNIQUE index or PRIMARY KEY, the old record is deleted before the new record is inserted. See section 13.1.4 INSERT Syntax.

In other words, you can't access the values of the old row from a REPLACE statement. In some old MySQL versions it appeared that you could do this, but that was a bug that has been corrected.

Kilde : http://www.mysql.com/doc/en/REPLACE.html
Avatar billede htx98i17 Professor
18. januar 2004 - 14:28 #6
Jeg ved man kan bruge en UPDATE, men det var for at spare noget kode, at jeg ville bruge en REPLACE.

mit spørgsmål gik på om man kunne bruge "$var+col2" i en REPLACE eller ej...

lars-jensen, svarede på mit spørgsmål.
Avatar billede arne_v Ekspert
18. januar 2004 - 14:31 #7
En UPDATE er kun 1 statement ligesom REPLACE.

En UPDATE er formentlig betydeligt hurtigere end en REPLACE.

Så jeg forstår ikke helt "for at spare noget kode" !?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester