php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.09.2006, 09:03  
Neuer Benutzer
 
Registriert seit: 07.09.2006
Beiträge: 2
mariohaehni
Standard SQL-Abfrage evt. mit JOIN

Hallo Zusammen

Ich habe gerade ein kleines Projekt wo es darum geht, eine Art Kundenverwaltung auszugeben. Es gibt einerseits Kunden und anderseits Branchen. Ich habe nun drei Tabellen. 1. Kunden, 2. Branchen 3. eine Verbindungstabelle von Kunden und Branchen. Meine SQL-Abfrage sieht momentan in etwa so aus:
PHP-Code:
<?php
SELECT k
.idk.firmenbezeichnungb.branchek.ortk.plzkb.kundenID
                                FROM kunden 
AS kbranchen AS bkundenBranchen AS kb
                                    WHERE k
.id kb.kundenID AND b.id kb.branchenID
?>
Dies führt nun dazu, dass alle Kunden und Ihre Branche(n) angezeigt werden. Jedoch werden Kunden, welcher keiner Branche zugeordnet sind nicht angezeigt.

Ziel ist es, alle Kunden auszugeben. Egeal ob sie einer, mehreren oder aber keiner Branche zugeordnet sind.

Ich habe heirzu beriets etwas mit LEFT JOIN und JOIN und INNER JOIN rumgespielt aber ohne Erfolg. Kann mir da jemand Helfen?

Bye
mariohaehni ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 07.09.2006, 11:26  
Erfahrener Benutzer
 
Registriert seit: 10.07.2003
Beiträge: 280
freq.9
freq.9 eine Nachricht über ICQ schicken freq.9 eine Nachricht über MSN schicken
Standard

Wieso sind sie keiner Branche zugeteilt? Wenn sie keiner zugewiesen sind sollte man sie vllt. auch "Nicht angegeben" oder "Sonstige" stellen. Wäre nun sinniger, als sie ohne zu lassen. Zudem frage ich mich, wofür du die kundenBranchen Tabelle brauchst. Würde doch viel besser mit einem JOIN funcktionieren, oder?
freq.9 ist offline   Mit Zitat antworten
Alt 07.09.2006, 11:54  
Erfahrener Benutzer
 
Registriert seit: 17.07.2006
Beiträge: 140
louis
Standard

Zitat:
Zitat von freq.9
Zudem frage ich mich, wofür du die kundenBranchen Tabelle brauchst. Würde doch viel besser mit einem JOIN funcktionieren, oder?
Wenn du dich das fragst solltest du dich fragen ob du lieber nicht anworten solltest

@mariohaehni: Stichwort "outer join", das wird dein Problem lösen.

mfg Louis
louis ist offline   Mit Zitat antworten
Alt 07.09.2006, 13:34  
Neuer Benutzer
 
Registriert seit: 07.09.2006
Beiträge: 2
mariohaehni
Standard

Hallo Louise

Danke für deine Antwort. Ich habe es jetzt trotzdem mit Left Join geschafft.

PHP-Code:
<?php
SELECT k
.idk.firmenbezeichnungb.branchek.ortk.plzkb.kundenID
FROM kunden 
AS 
LEFT JOIN kundenBranchen 
AS kb ON k.id kb.kundenID
LEFT JOIN branchen 
AS b ON kb.branchenID b.id 
?>
So funktionert es: Was wäre der Vorteil von "outer join"?
mariohaehni ist offline   Mit Zitat antworten
Alt 07.09.2006, 14:26  
Erfahrener Benutzer
 
Registriert seit: 17.07.2006
Beiträge: 140
louis
Standard

Jo,

prinzipiell ist das ein outer join, die Nomenklatur geht da z.B. bei MySQL und Oracle (bzw. ODBC) ein bisschen auseinander.

Ich habe das mal ganz einfach so gelernt:
inner join (oder einfach join) --> Datensatz nur in Ergebnismenge falls Bedingungen wahr sind
outer join --> auch Null Werte werden übernommen

Meiner Ansicht nach ist der left join ein left outer join...
__________________
mfg louis
louis 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
Abfrage von einer Abfrage Datenbanken 5 27.01.2011 23:31
mysql Abfrage Problem mit dem Join test022 Datenbanken 5 28.04.2007 08:07
MySQL Abfrage macht Seite langsam Datenbanken 11 19.10.2006 19:38
Problem mit Inner join Jabi Datenbanken 15 09.05.2006 14:10
INNER JOIN + Suchkriterien + Abfrage duerov PHP Tipps 2006 4 04.04.2006 12:47
Abfrage über zwei Tabellen (m. JOIN?) Spiff Datenbanken 3 13.02.2006 09:32
inner join aus db PHP Tipps 2006 8 22.01.2006 01:23
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
[Erledigt] INNER JOIN abfrage zusammen stricken Datenbanken 3 04.07.2005 02:21
join abfrage bei der etwas nicht ausgegeben werden soll nautiluS Datenbanken 7 03.05.2005 09:54
Abfrage über 2 Tabellen / Join agrajag Datenbanken 2 14.09.2004 23:05
SQL Abfrage mit join Datenbanken 5 12.07.2004 16:13
Abfrage aus DB noch mal ausgeben und Abfrage aus mehrern Tab PHP Tipps 2004 4 12.07.2004 15:00
[Erledigt] Mehrere COUNT(*) in einer Abfrage mit LEFT JOIN Datenbanken 8 18.06.2004 13:43
SQL Abfrage mit LEFT JOIN -> OK, aber ich komm net weiter PHP-Fortgeschrittene 3 04.06.2004 00:37

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
sql verbindungstabelle, join null werte zulassen, sql verbindungstabellen, join verbindungstabelle, sql abfrage über verbindungstabelle, sql abfrage verbindungstabelle, verbindungstabellen sql, verbindungstabelle sql, http://www.php.de/datenbanken/41997-sql-abfrage-evt-mit-join.html, vorteil join where, branchen abfrage in abfrage, sql alle kunden ohne besuche, was ist besser sql join on oder where, sql 3 tabellen verknüpfen nullwerte zulassen, sql join aber, sql abfrage null zulassen, sql verbindungstabelle join, kunde ohne nachrichten sql abfrage, sql join verbindungstabelle, vorteil von joins sql

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:54 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.