php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 20-11-2007, 22:13
Oliabt
 Newbie
Links : Onlinestatus : Oliabt ist offline
Registriert seit: Dec 2004
Ort: Nürnberg
Beiträge: 7
Oliabt ist zur Zeit noch ein unbeschriebenes Blatt
Oliabt eine Nachricht über ICQ schicken
Standard Logikproblem // dynamische Abfrage über 2 Tabellen

Hallo zusammen.

Ich hab ein etwas komplexeres SQL Problem das mich langsam an mir selbst zweifeln lässt.

Ich versuch das ganze mal zu erklären.

Es gibt eine Kundendatenbank und eine Profildatenbank. (Ein Profil ist beispielsweiße 'Fußballfan')

Der einfachheit halber verkleinere ich die KundenDB mal zur Erklärung.

unser beispielkunde hat zum beispiel

knr = 1
name = mustermann
vorname = max
firma = siemens

er hat 2 einträge in der profildatenbank
id = 1
knr = 1
merkmal = fußballfan

id = 2
knr = 1
merkmal = motorsportfan

soweit so gut und alles kein problem.


Jetzt gibt es eine komplexe suchmaske in der der User die möglichkeit hat suchkriterien festzulegen.

beispielsweise
alle kunden mit firma "siemens" UND merkmal = "fußballfan"

auch kein problem...

die suche könnte aber (komplexer) auch lauten

alle kunden die (name = mustermann UND firma = siemens) ODER (merkmal = fussballfan) ODER (merkmal = motorsportfan)


hier ist das problem.

wie formuliere ich eine sql abfrage die genau das abdeckt...
denn das merkmal steht in einer anderen tabelle...


vielleicht seh ich mittlerweile auch schon den wald vor lauter bäumen nicht mehr, aber ich verzweifel langsam.

danke schon jetzt...
Mit Zitat antworten
  #2 (permalink)  
Alt 20-11-2007, 22:17
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Verstehe das Problem nicht ganz. Dann nutzt du einen Join mit einer entsprechenden Restriktion. Vielleicht kannst du das Problem noch etwas genauer Eingrenzen.
Mit Zitat antworten
  #3 (permalink)  
Alt 21-11-2007, 07:24
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Falls jeder Kunde genau ein Merkmal hat, solltest du die Tabellen zusammenführen.
Mit Zitat antworten
  #4 (permalink)  
Alt 21-11-2007, 07:56
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Ansätze? Hier hat eigentlich keiner Lust Grundlagen zu vermitteln
Mit Zitat antworten
  #5 (permalink)  
Alt 26-11-2007, 08:07
nichtsooft
 Registrierter Benutzer
Links : Onlinestatus : nichtsooft ist offline
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 385
nichtsooft ist zur Zeit noch ein unbeschriebenes Blatt
nichtsooft eine Nachricht über ICQ schicken
Standard

Also ich würd das so machen...:

1. Querry:
SELECT * FROM kundendatenbank WHERE user_id = $user

2. Querry:
SELECT merkmal FROM profildatenbank WHERE user_id = $user

Bekommste ein Array mit allen Merkmalen für den User;
Danach machste ein foreach und gibst einfach alle Merkmale aus, die der Suchende auch angegeben hat.
__________________
WHILE (!$asleep) { $sheep++; }
Mit Zitat antworten
  #6 (permalink)  
Alt 26-11-2007, 08:49
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Wahrscheinlich ist das die beste Lösung...
Mit Zitat antworten
Antwort

Lesezeichen


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

Themen-Optionen
Thema bewerten
Thema bewerten:

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.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

EJS TreeGrid ansehen EJS TreeGrid

EJS TreeGrid is DHTML component written in pure JavaScript to display and edit data in table, grid, tree view or grid with tree on HTML page

09.04.2019 coqsoft@ | Kategorie: JAVASCRIPT/ Components
Suchmaschine redaktionell, Branchenportal zum Geld verdienen

Programmbeschreibung Die Bezahl-Suchmaschine ist in Perl und PHP programmiert (eigenes CGI-Verzeichnis notwendig), benötigt PHP aber keine MySQL-Datenbank. Webmaster haben mit dieser Suchmaschine neben der normalen kostenlosen Registrierung von Lin

06.04.2019 skripte@ | Kategorie: PHP/ Suchmaschinen
Oog Photo-Video-Gallery

Mit Oog Photo-Gallery können Sie einfach und stilvoll Bilder (auch Video & Audio) auf Ihrem PHP5-Webserver veröffentlichen und verwalten. Lizenz: GNU GPL v2

06.04.2019 trottbrand@ | Kategorie: PHP/ Bilder
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:33 Uhr.