Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

SQL Query erweitern bzgl. Position

Frage Entwicklung Datenbanken

Mitglied: ottscho

ottscho (Level 2) - Jetzt verbinden

27.07.2012 um 07:54 Uhr, 2988 Aufrufe

Hallo,

ich habe in einem Shopsystem mehrere Filter pro Artikel, welche über ein SQL Query geladen werden. Leider haben die Entwickler nicht an die Position gedacht. Diese kann man im Backend für die Filter angeben, aber im Frontend werden die Filter nicht korrekt ausgegeben. Hat mir jemad einen Tipp, wie ich die Abfrage erweitern kann um die Position korrekt zu erhalten?

Alle Tabellen hier aufzuschreiben wäre etwas viel, daher nur mal die wichtigsten Tabelle. In der Tabelle s_filter_relation steht die Position.

01.
s_filter: 
02.
id 	name 	position 	comparable 	sortmode  
03.
1 	Tyres 	1 
04.
2	Wheels 	2 
05.
3	Tubes 	3 
06.
 
07.
s_filter_realtion: 
08.
id 	groupID 	optionID 	position  
09.
1 	1       	1       	1  
10.
2 	1       	2       	2 
11.
3 	1       	3       	4 
12.
4 	1       	4       	3   
13.
 
14.
s_filter_options: 
15.
id 	name 	        filterable 	default 
16.
1 	ECO PRODUCT 	1 	 
17.
2 	XL REINFORCED 	1 	 
18.
3 	RUNFLAT 	1 	 
19.
4 	TEST 	        1 	 
20.
5 	SPEED 	        1 	 
21.
6 	TYRE CLASS 	1 	 
22.
 
23.
s_filter_values: 
24.
id 	groupID 	optionID 	articleID 	value 
25.
219900 	1 	        20 	        53494 	        63.3 
26.
219899 	1 	        19 	        53494 	        38 
27.
219898 	1 	        18 	        53494 	        100 
28.
219897 	1 	        17 	        53494 	        5 
29.
 
01.
SELECT  
02.
fv.optionID AS id, COUNT(*) AS countOptionValues, 
03.
fo.name AS optionName, 
04.
f.name AS groupName, 
05.
fv.value AS optionValue, 
06.
fv.id AS uniqueID, 
07.
st.objectdata AS optionNameTranslation, 
08.
st2.objectdata AS groupNameTranslation, 
09.
st3.objectdata AS articleTranslation 
10.
 
11.
FROM  
12.
s_articles_categories ac, 
13.
s_filter_values fv 
14.
 
15.
LEFT JOIN s_core_translations AS st ON st.objecttype='propertyoption'  
16.
AND st.objectkey=fv.optionID  
17.
AND st.objectlanguage='de'  
18.
 
19.
LEFT JOIN s_core_translations AS st2 ON st2.objecttype='propertygroup'  
20.
AND st2.objectkey=fv.groupID  
21.
AND st2.objectlanguage='de'  
22.
 
23.
LEFT JOIN s_core_translations AS st3 ON st3.objecttype='properties'  
24.
AND st3.objectkey=fv.articleID  
25.
AND st3.objectlanguage='de'  
26.
 
27.
JOIN  
28.
s_filter_options fo,  
29.
s_filter f,  
30.
s_articles a  
31.
 
32.
WHERE ac.categoryID=15  
33.
AND a.id = ac.articleID  
34.
AND a.id = fv.articleID  
35.
AND a.filtergroupID = f.id  
36.
AND a.active =1  
37.
AND a.changetime <= NOW()  
38.
AND fv.optionID = fo.id  
39.
AND fo.filterable = 1  
40.
AND fv.groupID = f.id  
41.
 
42.
GROUP BY fv.optionID, 
43.
fv.value  
44.
 
45.
ORDER BY fo.name ASC, 
46.
IF(f.sortmode=1, TRIM(REPLACE(fv.value,',','.'))+0, 0), IF(f.sortmode=2, COUNT(*) , 0) DESC, 
47.
fv.value
Danke für eure Hilfe.

Gruß
Ottscho
Ähnliche Inhalte
DSL, VDSL
Bandbreite Bürobetrieb erweitern (4)

Frage von Noobieman zum Thema DSL, VDSL ...

Datenbanken
SQL Server 2008 R2 iso (3)

Frage von Doktore77 zum Thema Datenbanken ...

Netzwerkmanagement
Docusnap-SQL: Anfängerfrage (1)

Frage von PharIT zum Thema Netzwerkmanagement ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(9)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (26)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Brauche Hilfe: Mit (schnellem) WLAN Strecke überbrücken (23)

Frage von pierrehansen zum Thema LAN, WAN, Wireless ...

Basic
Programmierung von Windows Programmen (10)

Frage von Ghost108 zum Thema Basic ...