webForumDet fria alternativet

Ersätta cell med text från en cell i en annan tabell

Databaser & SQL

6 svar · 256 visningar · startad av Layers

Medlem sedan okt. 20033 inlägg
Frågan#1

Hej!

Vore tacksam om någon orkar hjälpa mig med en liten SQL-sats. Kan i princip inget om SQL...:
__
Har en databas.
I den finns två tabeller: ImportProdukter och Produkter
* i "Produkter" finns 1) ArtNr 2) Beskrivning 3) Status (med ett värde 1-5)
* i "ImportProdukter" finns 1) ArtNr 2) Beskrivning
_
_
Jag vill ERSÄTTA en artikels "Beskrivning" i Produkter där "status" = 3, med beskrivningen från ImportProdukter.
_____________

Alltså något i stil med:

UPDATE Produkter
SET Produkter.Beskrivning = ImportProdukter.Beskrivning
WHERE ImportProdukter.ArtNr IN
(SELECT ArtNr FROM Produkter WHERE Status =3)
_____________

Tack på förhand! MVH Layers

Medlem sedan dec. 200012 464 inlägg
#2
UPDATE Produkter
SET Beskrivning = (
select Beskrivning 
  from ImportProdukter
WHERE ArtNr = produkter.artnr
WHERE Status =3
and artnr in ( 
 select ArtNr 
  FROM ImportProdukter)

Så ser det ut i standard SQL. Nu finns det DBMS (t.ex. access och Mysql) som inte har stöd för den sytaxen.

Medlem sedan okt. 20033 inlägg
#3

Hej!

Givetvis använder jag ACCESS, där jag behöver skriva in SQL-frågan.

(Testade ovantående.. och mycket riktigt fungerar det inte i Access.)

Tacksam för mer hjälp så att det fungerar i Access!

MVH Layers

Medlem sedan dec. 200012 464 inlägg
#4
UPDATE Produkter inner join ImportProdukter
  on produkter.artnr = importProdukter.artnr
SET produkter.Beskrivning = importProdukter.Beskrivning 
WHERE produkter.Status =3

Ovanstående borde fungera i Access (tyvärr så fungerar det nästan enbart i Access.)

Medlem sedan mars 2003772 inlägg
#5

Skulle ovanstående fungera i MS SQL Server 2000 ?

Medlem sedan okt. 20033 inlägg
#6

Tackar LarsG!
Fint namn haru med.. Layers = Lars.

Medlem sedan dec. 200012 464 inlägg
#7

Skulle ovanstående fungera i MS SQL Server 2000 ?

Nej.

253 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)