CommNews Forum Home  

Zurück   CnC Foren > Verschiedenes > Tech-Support / Tech-Talk

Antworten
 
Themen-Optionen Thema bewerten Ansicht
  #1  
Alt 29-05-2007, 09:19
Benutzerbild von ViTaCoKe
ViTaCoKe ViTaCoKe ist offline
Terrordrohnenhirte

 
Registriert seit: Oct 2006
Ort: Berlin
Beiträge: 110
ViTaCoKe hat noch keine Bewertung oder ist auf 0
OL Nick: ViTaCoKe
Style: USA
Software: - MySQL-Query-Problem

Hallo Leute!

Auch ich habe jetzt ein Problem.
Ich code einen Onlineshop und brauche Hilfe bei einer SQL-Query.
Die Query's, die ich derzeit in der Suchfunktion nutze lauten wie folgt (der Rest der Verarbeitung ist rausgeschnitten):


Code:
SELECT * FROM hp_shop_items WHERE item_name REGEXP 'Suchbegriff' OR item_desc REGEXP 'Suchbegriff'  OR item_hersteller REGEXP 'Suchbegriff' OR item_battyp REGEXP 'Suchbegriff' ORDER BY item_name ASC
und (basierend auf den Ergebnissen der letzten Query):

Code:
SELECT * FROM hp_shop_item_cat WHERE item_id='" . $obj->ID . "'
$obj->ID beinhaltet die Item-ID (Artikelnummer, Unique)
Ich möchte jetzt die SQL's miteinander verknüpfen, sodass ich ein Limit in der ersten SQL auch in der zweiten nutzen kann, der will halt nicht so wie ich das will. Da einige Artikel in mehreren Kategorien vorkommen, muss ich mit 2 Tabellen arbeiten.
Ich hoffe, das, was ich euch jetzt geschildert habe reicht euch aus und ihr könnt mir helfen, mein Problem zu lösen!

Edit: Sehe gerade, dass mein Thread verschoben wurde. Wollte den auch hier reinschreiben, hab mich da wohl vertan, sorry.
__________________

Wissen ist Macht.

Ich weiß nichts.
Macht nichts.

Geändert von ViTaCoKe (29-05-2007 um 09:35 Uhr).
Mit Zitat antworten
  #2  
Alt 29-05-2007, 12:14
Benutzerbild von EEBKiller
EEBKiller EEBKiller ist offline
Moderator

 
Registriert seit: May 2002
Ort: Irgendwo in Bayern
Beiträge: 8.989
EEBKiller hat noch keine Bewertung oder ist auf 0
OL Nick: EEBKiller
Was für ein "Limit" meinst du ?
__________________

Raubkopierer, IT-Experten und E-Gamer in den Knast !!!
Kinderschänder, Sexualstraftäter, Bankräuber und Mörder in die Gesellschaft reintegrieren,
wir brauchen Platz für Computer-Kriminelle in den Gefängnissen !!!
Mit Zitat antworten
  #3  
Alt 29-05-2007, 12:29
Benutzerbild von ViTaCoKe
ViTaCoKe ViTaCoKe ist offline
Terrordrohnenhirte

 
Registriert seit: Oct 2006
Ort: Berlin
Beiträge: 110
ViTaCoKe hat noch keine Bewertung oder ist auf 0
OL Nick: ViTaCoKe
Style: USA
Das Limit ist... ich sage mal ... Nebensache. Es geht darum, dass ich mit der ID des Artikels (die ich in der Query ermittle), die Kategorien aus der anderen Query auslesen möchte.
Ich stelle mir die SQL ungefähr so vor (so funzt sie nur leider nicht):

SELECT * FROM hp_shop_items s, hp_shop_item_cat c WHERE item_id='ID aus hp_shop_items'

Verstehst du jetzt was ich meine?

(Diese SQL möchte ich hinterher um ein Ergebnislimit erweitern, dass es ungefähr so aussieht:
SELECT * FROM hp_shop_items s, hp_shop_item_cat c WHERE item_id='ID aus hp_shop_items' LIMIT 0, 4)
__________________

Wissen ist Macht.

Ich weiß nichts.
Macht nichts.
Mit Zitat antworten
  #4  
Alt 29-05-2007, 12:51
Benutzerbild von EEBKiller
EEBKiller EEBKiller ist offline
Moderator

 
Registriert seit: May 2002
Ort: Irgendwo in Bayern
Beiträge: 8.989
EEBKiller hat noch keine Bewertung oder ist auf 0
OL Nick: EEBKiller
Achso, das geht so nicht, wie dus möchtest, ausser du willst, dass sich der komplette Ergebnissatz immer wieder wiederholt, wenn ein Artikel in mehreren Kats ist.

Wenn ein Artikel nur in einer Kategorie wäre, wäre das Überhaupt kein Problem, aber in mehreren Kat's, das kriegste viel zu viel unnütze Daten raus.

Lass es in 2 Queries, da der erste ohnehin verhältnismäßig viel Performance fressen würde.

(Ich hab früher auch gedacht, je mehr man in ein SQL-Statement reinpackt, desto besser. Aber bei manchen Fällen Vervielfachst du damit nur die Abfragedauer im Gegensatz zu einzelnen Queries ...)
__________________

Raubkopierer, IT-Experten und E-Gamer in den Knast !!!
Kinderschänder, Sexualstraftäter, Bankräuber und Mörder in die Gesellschaft reintegrieren,
wir brauchen Platz für Computer-Kriminelle in den Gefängnissen !!!

Geändert von EEBKiller (29-05-2007 um 12:54 Uhr).
Mit Zitat antworten
  #5  
Alt 29-05-2007, 13:07
Benutzerbild von ViTaCoKe
ViTaCoKe ViTaCoKe ist offline
Terrordrohnenhirte

 
Registriert seit: Oct 2006
Ort: Berlin
Beiträge: 110
ViTaCoKe hat noch keine Bewertung oder ist auf 0
OL Nick: ViTaCoKe
Style: USA
Das Problem ist, dass es in einzelnen Queries nicht funktioniert, darum will ich auf 2 umsteigen. Die Abfrage, ob ein Artikel bereits angezeigt wurde ist ja kein Thema, den Müll kann ich ja rausfiltern.
__________________

Wissen ist Macht.

Ich weiß nichts.
Macht nichts.
Mit Zitat antworten
  #6  
Alt 30-05-2007, 12:10
Benutzerbild von ViTaCoKe
ViTaCoKe ViTaCoKe ist offline
Terrordrohnenhirte

 
Registriert seit: Oct 2006
Ort: Berlin
Beiträge: 110
ViTaCoKe hat noch keine Bewertung oder ist auf 0
OL Nick: ViTaCoKe
Style: USA
Ich darf voller Freude verkünden: Es hat sich erledigt!
Die SQL lautet wie folgt (komplett):
Code:
SELECT * FROM hp_shop_items s, hp_shop_item_cat c WHERE (c.item_cat='kategoriezahl' AND c.item_id=s.ID) AND 
(s.item_name REGEXP 'suchbegriff' OR s.item_desc REGEXP 'suchbegriff' OR s.item_hersteller REGEXP 'suchbegriff' OR s.item_battyp REGEXP 'suchbegriff') 
ORDER BY s.ID ASC
Vielen dank auf jedenfall für eure Hilfe!
Meinetwegen kann das Thema geschlossen werden.

Edit:
Na gut, dann lass es auf, hast auch Recht
__________________

Wissen ist Macht.

Ich weiß nichts.
Macht nichts.

Geändert von ViTaCoKe (30-05-2007 um 16:35 Uhr).
Mit Zitat antworten
  #7  
Alt 30-05-2007, 13:08
Benutzerbild von AMD-Powered
AMD-Powered AMD-Powered ist offline
Moderator

 
Registriert seit: Jan 2004
Ort: Nähe Frankfurt/Main
Beiträge: 7.036
AMD-Powered ist...
OL Nick: AMDPowered ID 175
Style: vBulletin Default
Nöööö, das Thema bleibt mal schön offen evtl. kann es ja weitergenutzt werden, da der Threadtitel ja ziemlich allgemein gehalten ist und so auch anlehnende Probleme besprochen werden können.

für die Lösung.
__________________
Gruß AMD-Powered
Mit Zitat antworten
Antworten

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:48 Uhr.


Powered by vBulletin Version 3.7.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template-Modifikationen durch TMS

Affiliates
United Forum GetBoinKeD cnc.onlinewelten.de