Kom ihåg mig?

Varför funkar inte denna SQL query?

 
Ämnesverktyg Visningsalternativ
Oläst 2013-11-06, 13:44 #1
naak2803 naak2803 är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2011
Inlägg: 767
naak2803 naak2803 är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2011
Inlägg: 767
Standard Varför funkar inte denna SQL query?

Hej,
jag har lite problem med en query..

UPDATE OfferCode SET status = 1, usedDate = '2013-01-01' WHERE id = (SELECT id FROM OfferCode WHERE code = 'vip' ORDER BY usedDate LIMIT 1)

anledning till att jag väljer att göra så är att db har dubletter av samma "code", och då vill jag endast uppdatera den första raden.

dvs
Kod:
[dbo.OfferCode]
code     status     usedDate 
vip        0           2013-01-01
vip        0           2013-01-01
vip        0           2013-01-01
xxx       0           2013-01-01
yyy       0           2013-01-01
zzz        0           2013-01-01
ERROR [HY000] [MySQL][ODBC 5.1 Driver][mysqld-5.5.34]You can't specify target table 'OfferCode' for update in FROM clause

Det jag är ute efter att kunna uppdatera första raden med "code=vip" och sätta om statusen till "1"

Kod:
[dbo.OfferCode]
code     status     usedDate 
vip        1           2013-01-01
vip        0           2013-01-01
vip        0           2013-01-01
xxx       0           2013-01-01
yyy       0           2013-01-01
zzz        0           2013-01-01

Senast redigerad av naak2803 den 2013-11-06 klockan 13:49
naak2803 är inte uppkopplad   Svara med citatSvara med citat
 


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 11:58.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017