php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.07.2004, 18:10  
Gast
 
Beiträge: n/a
Standard Möglich? SELECT Wenn ID in fremder Tabelle stimmt...

Der aktuelle Code:

Code:
$_query = "SELECT hellhaus_produkte.hellhaus_produkte_id as id, hellhaus_produkte.name as name, hellhaus_produkte.hersteller as hersteller, hellhaus_produkte.artikelnummer as artikelnummer, REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE(hellhaus_produkte.name, 'Ä', 'A'), 'Ö', 'O'), 'Ü', 'U'), 'ä', 'a'), 'ö', 'o'), 'ü','u'), 'ß', 's') as sort, hellhaus_produkte_aktiv.hellhaus_produkte_id as aktiv ";
$_query .= "FROM hellhaus_produkte ";
$_query .= "LEFT JOIN hellhaus_produkte_aktiv ON hellhaus_produkte_aktiv.hellhaus_produkte_id = hellhaus_produkte.hellhaus_produkte_id ";
$_query .= "WHERE hellhaus_produkte.archiv = '0' ";
Die Datenbankstruktur
hellhaus_produkte
Hier liegt der eigentliche Content, der später per mysql_result abgefragt wird.
Wichtig für mein Abfrage ist nur die Spalte:
hellhaus_produkte_id

hellhaus_produkte_bereiche_join
Und in dieser Tabelle werden Bereich und Produkt zugeordnet
Die Spalten heißen:
hellhaus_produkte_id
hellhaus_bereiche_id

Das Ziel
Ich möchte als Resultat nur noch die Zeilen aus der "hellhaus_produkte" Tabelle auslesen, welche einem bestimmten Bereich zugeordnet sind.

Der (Fehl)Versuch
Versuchsweise habe ich einfach an das
Code:
"WHERE hellhaus_produkte.archiv = '0'
ein
Code:
 AND hellhaus_produkte_bereiche_join.hellhaus_produkte_id = '$Kategorie'"
angehängt.
SQL meldet allerdings, daß die Tabelle "hellhaus_produkte_bereiche_join" unbekannt ist.
Kein Wunder, schließlich taucht sie ja auch sonst nirgendwo auf.

Die Vermutung
Ich vermute also, daß ich die Tabelle "hellhaus_produkte_bereiche_join" noch im "FROM" teil mit einem JOIN einbauen muss.

Die Frage an euch
Ist, wie mache ich das.


Wäre klasse, wenn ihr eine Lösung für mich habt.
Sollte es schon vom Prinzip nicht gehen, wartet wohl noch etwas mehr Arbeit auf mich...
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 23.07.2004, 09:04  
Erfahrener Benutzer
 
Registriert seit: 30.06.2004
Beiträge: 619
tapferesschneiderlein
Standard

PHP-Code:
$_query '
SELECT 
p.hellhaus_produkte_id as id, 
p.name as name, 
p.hersteller as hersteller, 
p.artikelnummer as artikelnummer, 
REPLACE(
 REPLACE( 
  REPLACE( 
   REPLACE( 
    REPLACE( 
     REPLACE( 
      REPLACE(p.name, "Ä", "A"),
     "Ö", "O"),
    "Ü", "U"),
   "ä", "a"),
  "ö", "o"), 
 "ü","u"),
"ß", "s") as sort, 
a.hellhaus_produkte_id as aktiv
FROM hellhaus_produkte p
LEFT JOIN hellhaus_produkte_aktiv a ON a.hellhaus_produkte_id = p.hellhaus_produkte_id 
JOIN hellhaus_produkte_bereiche_join j ON j.hellhaus_produkte_id = p.hellhaus_produkte_id
WHERE p.archiv = "0"
AND j.hellhaus_bereiche_id = "' 
$Kategorie '" 
'

(N.T.)
tapferesschneiderlein ist offline   Mit Zitat antworten
Alt 23.07.2004, 09:50  
Gast
 
Beiträge: n/a
Standard

Danke für den Code.

Eine Frage noch:
Wofür verwendest du "a", "p" und "j"?
Code:
FROM hellhaus_produkte p 
LEFT JOIN hellhaus_produkte_aktiv a ON a.hellhaus_produkte_id = p.hellhaus_produkte_id 
JOIN hellhaus_produkte_bereiche_join j ON j.hellhaus_produkte_id = p.hellhaus_produkte_id 
WHERE p.archiv = "0" 
AND j.hellhaus_bereiche_id = "' . $Kategorie . '"
Ist z.B. "hellhaus_produkte_aktiv a" so etwas wie eine Variablenzuweisung,
so daß man später nur noch "a" anstelle von "hellhaus_produkte_aktiv" schreiben muss?
  Mit Zitat antworten
Alt 23.07.2004, 10:26  
Erfahrener Benutzer
 
Registriert seit: 30.06.2004
Beiträge: 619
tapferesschneiderlein
Standard

Ja, das nennt sich aber nicht »Variable« sondern »Alias«. Macht es a) kürzer, b) könntest Du ein und dieselbe Tabelle mit verschiedenen Alia ansprechen, wenn Du sie auf verschiedene Art mit anderen verknüpfen willst.
tapferesschneiderlein ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Kein Ergebnis bei SELECT (MySQL 4.1.9) dr.e. Datenbanken 4 15.06.2008 19:54
[Erledigt] Daten aus einer Tabelle mit Form Select weiter geben ch4in PHP Tipps 2008 12 06.06.2008 21:42
select count(*) from tabelle mit AND = fehler ... cytrobic Datenbanken 2 27.07.2006 12:40
2 joins auf gleiche Tabelle in einem Select frx Datenbanken 4 14.05.2006 21:57
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
SELECT spalten FROM tabelle; (Datenausgabe) GrU3nL!nG Datenbanken 5 30.06.2005 17:00
Select und Count auf eine Tabelle db Datenbanken 6 23.06.2005 16:33
select feld mit auswahl aus mysql tabelle PHP Tipps 2005 10 01.06.2005 14:17
SELECT * FROM tabelle WHERE DarkThunder PHP Tipps 2005 10 23.04.2005 21:17
[Erledigt] frage zu select statement Datenbanken 4 21.12.2004 10:29
[Erledigt] SELECT * FROM tabelle WHERE id 'zwischen' 10 AND 20 Datenbanken 2 28.11.2004 14:37
Select FROM tabelle ORDER BY id LIMIT 1,10 funkt nicht richt juhuwoorps Datenbanken 6 12.09.2004 14:02
MySQL select in einer Tabelle ausgeben PHP Tipps 2004 2 11.09.2004 18:22
[Erledigt] 2 mal select 1 form PHP-Fortgeschrittene 1 01.09.2004 20:13
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
select wenn, wenn id in select, tabelle auslesen wenn id stimmt, sql select fremde tabelle, php inhalt nur anzeigen wenn id stimmt, php where id in

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:56 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.