Guten Abend,
kann mir bitte Jemand evtl. sagen, ob die folgende Query vom Syntax
hier richtig ist?
Vielen Dank im Voraus und Gruß
Amin
<sql:query var=3D"showButton" dataSource=3D"${MyTestDrive2}" sql=3D"SELECT
c=2Ecarname, c.pricefrom, c.priceto, c.imageurl, c.description, t.name,
b=2Elogourl, b.name
FROM car c,
types t,
car_type ct,
brand b
WHERE t.name =3D '${choosen}'
and (${firstEntry} < c.pricefrom and ${secondEntry} >
c=2Epricefrom)
or (${firstEntry} < c.priceto and ${secondEntry} >
c=2Epriceto)
and c.carid =3D ct.carid
and t.typeid =3D ct.typeid
and c.brandid =3D b.brandid" />
${firstEntry} and ${secondEntry} sind zwei variablen, wo ich den
Value eines textfeldes in zwei teilen gesplitet habe.
In ${firstEntry} wird der pricefrom gespeichert und in ${secondEntry}
der priceto.
Hierbei die Options aus dem Select-Feld:
<select>
<option value=3D"500-9000"> <9</option>
<option value=3D"9000-12000">9-12</option>
<option value=3D"23000-30000" >23-30</option>
<option value=3D"12000-17000" >12-17</option>
<option value=3D"17000-23000" >17-23</option>
<option value=3D"30000-200000" >30+</option>
</select>
Der Hintergrund ist, dass es bei einer Tabelle für Autos, einrn Wagen
unter zwei Pries-Kategorien vorhanden sein.
z=2EB.
Passat unter der Preis-Kategorie: 12000 - 17000 (Kostet in diesem Fall
135000)
Passat unter der Preis-Kategorie 9000 - 12000 (kostet in diesem Fall
9500)
Die Tabelle sind flogendermaßen gebaut:
CREATE TABLE `brand` (
`BrandId` int(10) unsigned NOT NULL auto_increment,
`Name` varchar(60) NOT NULL,
`LogoUrl` varchar(60) NOT NULL,
`Priority` int(2) NOT NULL,
PRIMARY KEY (`BrandId`)
);
CREATE TABLE `car` (
`CarId` int(10) unsigned NOT NULL auto_increment,
`Name` varchar(100) NOT NULL,
`PriceFrom` decimal(10,0) unsigned NOT NULL default '0',
`PriceTo` decimal(10,0) NOT NULL default '0',
`BrandId` int(10) unsigned NOT NULL default '0',
`ImageUrl` varchar(200) NOT NULL,
`Description` text NOT NULL,
PRIMARY KEY (`CarId`)
);
DROP TABLE IF EXISTS `car_type`;
CREATE TABLE `car_type` (
`TypeId` int(10) unsigned NOT NULL,
`CarId` int(10) unsigned NOT NULL,
PRIMARY KEY (`TypeId`,`CarId`)
);
CREATE TABLE `types` (
`TypeId` int(10) unsigned NOT NULL auto_increment,
`Name` varchar(60) NOT NULL,
PRIMARY KEY (`TypeId`)
);
