MySQL query

Gestart doorOne2xs12 reacties26 weergaven

13 berichten · pagina 1 van 1

One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Waarom werkt deze query niet:

UPDATE catalog_pages SET `order_num` = ( SELECT `order_num` 
FROM catalog_pages
ORDER BY `order_num` DESC 
LIMIT 1 ) +1


Ik krijg deze error:

#1093 - You cant specify target table catalog_pages for update in FROM clause


- Niels
0
Berichten
6.356
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Je mist een WHERE?
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Wat voor where moet ik dan neerzetten emo?
0
Berichten
6.356
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
weet ik veel yummie ik weet niet waar je het voor gebruikt?

UPDATE catalog_pages SET `order_num` = ("SELECT `order_num`
FROM catalog_pages
ORDER BY `order_num` DESC
LIMIT 1") +1


Misschien was je " vergeten ?confused weet het ook niet yummie
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Nope werkt ook niet

Hij zet alles op 1 dan
0
Berichten
5.957
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Wie heeft die query geschreven. emoWat moet die doen?
0
Berichten
6.356
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
@Nielsie,

Daarom moet je ook een WHERE gebruiken yummie
0
Berichten
262
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
snap niet wat je precies wilt..

in een UPDATE query is dezelfde tabel blijkbaar niet beschikbaar om ook records uit te selecteren. de meest eenvoudige manier om dit op te lossen is door na je eerste UPDATE query het aantal gewijzigde rijen te tellen met behulp van mysql_affected_rows(). vervolgens gebruik je deze waarde in je tweede query om het aantal op te halen.

het het is iets meer script.maarr heb je upden duur minder ellende mee.

of eerst de select query op te halen en vervolgen update tel je er 1 bij op

en haal al ` uit je query. maak er eerder " van
0
Berichten
4.912
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
UPDATE catalog_pages SET `order_num` = ("SELECT `order_num`
FROM catalog_pages
WHERE ORDER BY `order_num` DESC
LIMIT 1") +1


dit meschien?
0
Berichten
8.602
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
@Simon ` is voor mysql rijen, is voor waarden
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Nja laat maar emo
0
Berichten
13.482
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Deze query kan niet. Je kunt bij een UPDATE query niets uit de tabel die je gebruikt halen.. Je zou met PHP eerst met een query `order_num` moeten ophalen, en dan pas +1 updaten.. Anders gaat het niet.
0
Berichten
431
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Je kan proberen met een teller in mysql, maar ik weet helemaal niet hoe die werken yummie
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren