FAQ |
Kalender |
|
![]() |
#1 | ||
|
|||
Mycket flitig postare
|
hej, skulle behöva lite hjälp med denna query... det jag vill göra är att köra update på flera rader samtidigt i en tabell med endast en enda query..
har testad göra så här, med det verkar inte fungera. UPDATE jos_jms SET blocked = '123,255,1024' WHERE userid = 992, SET blocked = '992, 456,225' WHERE userid = 123; Never mind... lyckade lösa detta genom UPDATE jos_jms SET blocked = CASE WHEN userid = 992 THEN '123,255,1024'; WHEN userid = 123 THEN '992, 456,225'; ELSE blocked END; Senast redigerad av naak2803 den 2013-11-12 klockan 00:17 |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Har WN som tidsfördriv
|
Citat:
Något i stil med följande kanske fungerar, ej testat koden.. UPDATE jos_jms SET blocked = CASE WHEN userid = 992 THEN '123,255,1024' WHEN userid = 123 THEN '992, 456,225' ELSE blocked END WHERE userid IN (992,123) |
||
![]() |
![]() |
![]() |
#3 | |||
|
||||
Har WN som tidsfördriv
|
Vad är det du vill åstadkomma?
Den där queryn du löste det med är ju hopplöst odynamisk när det blir lite större datasets. Man kan ju knappast peta in alla sina user IDs i den CASE-satsen. Den där logiken bör du även hantera i ditt server side språk och inte i databasqueryn är min bestämda åsikt. |
|||
![]() |
![]() |
Svara |
|
|