Uppdatera tabell

Databaser & SQL

8 svar · 461 visningar · startad av devotion

Medlem sedan jan. 20013 582 inlägg
Trådstart#1

Hej!

Har följande kod:

update tblMaterial
set Unit = 
case substring(Nr,1,2)
      when  '01' then 'm'
      when  '02' then 'm'
       ...
end
where ...

Hur fixar jag till den koden så att övriga fall blir 'st'

Det kommer vara 5-6 matchningar som ska bli 'm'

Kan man optimera?

Mvh
Henrik

Medlem sedan dec. 20025 483 inlägg
#2
update tblMaterial
set Unit = 
case when substring(Nr,1,2) in ('01','02',...)
      then 'm'
      else 'st'
end
Medlem sedan jan. 20013 582 inlägg
#3

Peter S skrev:

update tblMaterial
set Unit = 
case when substring(Nr,1,2) in ('01','02',...)
      then 'm'
      else 'st'
end

Det ser ju fint ut :)

Men nu vill jag ha ett villkor till.

På svenska:

De artikelnummer som börjar på 01, 02, 03, 05, 06 ska få enhet 'm' övriga 'st'
om de inte heter enligt bifogad bild, då ska de inte förändras (eller man kanske ska sätta att de får enhet enligt bilden??)

Eller ska man göra på annat sätt?

Mvh
Henrik

artiklar.png
Medlem sedan jan. 20013 582 inlägg
#4

Ingen? :)

mvh
Henrik

Medlem sedan dec. 20025 483 inlägg
#5

Jag är inte riktigt med på villkoret du vill lägga till. Vilka skall ha 'st' och vilka skall varken ha 'm' eller 'st'? De vars artikelnummer matchar...

Medlem sedan jan. 20013 582 inlägg
#6

Man kanske kan hårdkoda in de som skall ha 'm' och de enligt bifogad bild... övriga 'st'?

Mvh
Henrik

Medlem sedan dec. 20025 483 inlägg
#7
update tblMaterial
set Unit = 
case when ArtNr in ('Ö01L','Ö01',...)
       then '?'
     when substring(ArtNr,1,2) in ('01','02',...)
       then 'm'
     else 'st'
end
Medlem sedan dec. 20025 483 inlägg
#8

Hm

update tblMaterial
set Unit = 
case when substring(ArtNr,1,2) in ('01','02',...)
       then 'm'
     else 'st'
end
where
 ArtNr not in ('Ö01L','Ö01','S01',...)
Medlem sedan jan. 20013 582 inlägg
#9

Precis! :)

Mvh
Henrik

261 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
116 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)