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, 2983 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
gelöst MS SQL Abfragen und Formulare in Webseite einbinden (3)

Frage von Machello zum Thema Datenbanken ...

Backup
Backup-Software für IIS und MS SQL (2)

Frage von Ravelux zum Thema Backup ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (17)

Frage von montylein1981 zum Thema Windows Server ...

Windows Server
Lizenzierung Microsoft Server , SQL- Server und Clients (10)

Frage von EdisonHH zum Thema Windows Server ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(8)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte