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, 2991 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
Datenbanken
SQL und C-Sharp - Grid und einfache Bearbeitungsmaske (3)

Frage von Archimedes zum Thema Datenbanken ...

Datenbanken
gelöst SQL-Dateien sortieren, kombinieren und filtern (6)

Frage von derapfelsaft zum Thema Datenbanken ...

Hardware
Multimediadosen erweitern? (1)

Frage von derRAV3N zum Thema Hardware ...

Datenbanken
SQL restore bringt Fehler (2)

Frage von franksig zum Thema Datenbanken ...

Neue Wissensbeiträge
Administrator.de Feedback

Umgangsformen auf der Seite

(7)

Information von Frank zum Thema Administrator.de Feedback ...

Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(11)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Dir tc Befehl unter Windows 10 macht Probleme (14)

Frage von sugram zum Thema Batch & Shell ...

Windows Server
Windows Server Komplettspiegelung (13)

Frage von pdiddo zum Thema Windows Server ...

Windows Server
Windows Server 2016 RDS Remoteapp Anzeigefehler (11)

Frage von qlnGenius zum Thema Windows Server ...