10. april 2013 - 22:35Der er
5 kommentarer og 1 løsning
select og update i samme query
Jeg prøver at lave select og update i samme query, men det er vist ikke tilladt.. har google lidt og man skal vist lave in join.. men har ikke noget at join på..
det jeg prøver at opnå er:
2 tabeller..
Priser: id - vare - pris
Bruger: id - navn - beloeb
jeg vil gerne tage prisen på en vare og trække den fra en brugers beloeb og lave en update.. phpmyadmin melder fejl, så det jeg har gjort du er jeg har løst det med 3 querys.
først select varens pris, så beløb.. så minus jeg med php og lave en update..
vil gerne lave det med en query, så hvis brugeren har 2 sessioner at 2. sessioner ikke rammer mellem de 3 query, og så giver et forkert tal..
Men der er ik noget jeg kan join på?
f.eks hvis jeg gerne vil tage vare id nr 3 og trække prisen fra bruger id 1's beloeb
Kan det betale sig at tilføje en limit 1? ved godt det ikke kan betale sig når where er en primarykey/unik..
men hvad hvis det bare var for den første vare kaldt "iPhone 4" og jeg ved der kun er en "iphone 4".. måske et dårligt eksemple, men bare for at lige at forstå limit 1 konceptet.
UPDATE bruger SET beloeb = beloeb - (SELECT pris FROM vare WHERE vare= 'iPhone 4' LIMIT 1) WHERE id = ?
Hvis der er index paa vare, saa tror jeg ikke at det goer nogen forskel.
Hvis der ikke er index, saa maaske.
Synes godt om
Ny brugerNybegynder
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.