20. november 2005 - 08:33Der er
8 kommentarer og 1 løsning
on caluse
Hejsa E
Jeg har lige opgraderet fra 4.0.16 til 5.0.15 og nu kommer der en fejl i et select...
SELECT DISTINCT v.vID, v.vnavn, v.harBillede, v.pris, b.picnavn, b.height, b.width, u.udsalgPct FROM varer v, varegrupper vg LEFT JOIN vgudsalg u ON vg.top = u.vgID LEFT JOIN produktbilleder b ON v.vID = b.vID WHERE v.tilhgrp = vg.vgID AND (v.ring_for_pris = 'on' OR v.lagerstatus > 0 OR v.saelgIkkePaaLager = 'on') AND b.standard = 1 AND v.aktiv = 'on' AND v.vID <> 0 AND v.tilhgrp IN (0) ORDER BY v.vID
[MySQL][ODBC 3.51 Driver][mysqld-5.0.15-nt]Unknown column 'v.vID' in 'on clause'
vID findes i varer tabellen (og det virkede før) så det må være noget med JOINS der ikke kører på samme måde som før.
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Hvis jeg tager den ene join ud, så virker det fint: SELECT DISTINCT v.vID, v.vnavn, v.harBillede, v.pris, u.udsalgPct FROM varer v, varegrupper vg LEFT JOIN vgudsalg u ON vg.top = u.vgID WHERE v.tilhgrp = vg.vgID AND (v.ring_for_pris = 'on' OR v.lagerstatus > 0 OR v.saelgIkkePaaLager = 'on') AND v.aktiv = 'on' AND v.vID <> 0 AND v.tilhgrp IN (0) ORDER BY v.vID
SELECT DISTINCT v.vID, v.vnavn, v.harBillede, v.pris, b.picnavn, b.height, b.width, u.udsalgPct FROM varer v, varegrupper vg (LEFT JOIN vgudsalg u ON vg.top = u.vgID) (LEFT JOIN produktbilleder b ON v.vID = b.vID) WHERE v.tilhgrp = vg.vgID AND (v.ring_for_pris = 'on' OR v.lagerstatus > 0 OR v.saelgIkkePaaLager = 'on') AND b.standard = 1 AND v.aktiv = 'on' AND v.vID <> 0 AND v.tilhgrp IN (0) ORDER BY v.vID
SELECT DISTINCT v.vID, v.vnavn, v.harBillede, v.pris, b.picnavn, b.height, b.width, u.udsalgPct FROM varer v (INNER JOIN varegrupper vg ON v.tilhgrp = vg.vgID) (LEFT JOIN vgudsalg u ON vg.top = u.vgID) (LEFT JOIN produktbilleder b ON v.vID = b.vID) WHERE (v.ring_for_pris = 'on' OR v.lagerstatus > 0 OR v.saelgIkkePaaLager = 'on') AND b.standard = 1 AND v.aktiv = 'on' AND v.vID <> 0 AND v.tilhgrp IN (0) ORDER BY v.vID
men det virker heller ikke... [MySQL][ODBC 3.51 Driver][mysqld-5.0.15-nt]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(INNER JOIN varegrupper vg ON v.tilhgrp = vg.vgID) (LEFT JOIN vgudsalg u ON vg.t' at line 1
SELECT DISTINCT v.vID, v.vnavn, v.harBillede, v.pris, b.picnavn, b.height, b.width, u.udsalgPct FROM (((varer v INNER JOIN varegrupper vg ON v.tilhgrp = vg.vgID) LEFT JOIN vgudsalg u ON vg.top = u.vgID) LEFT JOIN produktbilleder b ON v.vID = b.vID) WHERE (v.ring_for_pris = 'on' OR v.lagerstatus > 0 OR v.saelgIkkePaaLager = 'on') AND b.standard = 1 AND v.aktiv = 'on' AND v.vID <> 0 AND v.tilhgrp IN (0) ORDER BY v.vID
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.