31. januar 2004 - 15:53
Der er
20 kommentarer og 1 løsning
Opdater felt i tabel med felt fra anden tabel.
UPDATE t1 SET t1.kpris = (SELECT dkpris FROM t2 WHERE t1.varenr = t2.did); Jeg får fejl i dette lille script ??? Stig
Annonceindlæg fra Computerworld
31. januar 2004 - 16:04
#1
std sql92 burde hedde noget i stil med update t1 set kpris = t2.dkpris from t1 inner join t2 on t1.varenr = td.did
31. januar 2004 - 16:05
#2
I øvrigt - hvad fejl får du? Du vil f.eks. have et problem såfremt din subselect ovenfor returnerer mere end 1 række...
31. januar 2004 - 16:17
#3
Jeg får denne, med dit script. Det samme med mit. Fejl: SQL-forespørgsel : UPDATE t1 setkpris = t2.dkpris FROM t1 inner join t2 on t1.varenr = t2.did MySQL returnerede: You have an error in your SQL syntax near 'FROM t1 inner join t2 on t1.varenr = t2.did' at line 1
31. januar 2004 - 16:20
#4
MySQL understøtter ikke sådan en konstruktion. Prøv med noget a la: UPDATE t1,t2 SET t1.kpris=t2.dkpris WHERE t1.varenr=t2.did
31. januar 2004 - 16:26
#5
samme fejl !!
31. januar 2004 - 16:29
#6
Næppe præcis samme fejl. Kan du copy paste fejlen ind ?
31. januar 2004 - 16:39
#7
Fejl SQL-forespørgsel : UPDATE t1,t2 SET t1.kpris = t2.dkpris WHERE t1.varenr = t2.did MySQL returnerede: You have an error in your SQL syntax near 't2 SET t1.kpris=t2.dkpris WHERE t1.varenr=t2.did' at line 1
31. januar 2004 - 16:42
#8
Og det er t1.kpris og ikke t1.dkpris ?
31. januar 2004 - 16:45
#9
t1.kpris t2.dkpris
31. januar 2004 - 16:50
#10
Hvad version af MySQL kører du?
31. januar 2004 - 16:56
#11
I følge MySQL's dokumentation er det ikke muligt at udføre et SELECT-statement i forbindelse med UPDATE's, kun ved INSERT's.
31. januar 2004 - 16:56
#12
Godt spørgsmål. Mit forslag krævet 4.0.4 eller nyere ifølge docs.
31. januar 2004 - 16:58
#13
31. januar 2004 - 17:00
#14
Og som arne siger, kan du anvende konstruktionen UPDATE [tables] SET ... fra MySQL version 4.
31. januar 2004 - 17:08
#15
jeg køre 3.23.54 hos min udbyder. Det er jo noget p..
31. januar 2004 - 17:11
#16
Lav et loop i applikationen ! (PHP eller ASP formoder jeg)
31. januar 2004 - 17:12
#17
Jeg må finde på en anden måde at løse opdateringen på.
31. januar 2004 - 17:15
#18
en SELECT i t1, en loop i applikation og et antal UPDATE i t1. Ikke kønt eller specielt effektivt, men det bør løse opgaven.
31. januar 2004 - 17:16
#19
en SELECT i t2, en loop i applikation og et antal UPDATE i t1.
31. januar 2004 - 18:21
#20
Det hele skulle køre direct i databasen.
31. januar 2004 - 18:24
#21
Det kan det ikke med den version af MySQL.
Computerworld tilbyder specialiserede kurser i database-management