Announcement

Collapse
No announcement yet.

Frage zu einem Select

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Frage zu einem Select

    Hallo,

    ich habe folgendes Problem

    Ich habe zwei tabellen.

    Aufbau
    1. Tabelle: userid, username, ...
    2. tabelle userid, sprache

    Dabei kann jeder User mehrere Sprache hinterlegen.

    Beispiel Daten:

    Tabelle1:
    1|lordtux|...
    2|testuser|...
    3|blubb|...
    ...

    Tabelle 2:
    1|deutsch
    2|deutsch
    2|spanisch
    3|englisch
    3|russisch


    Jetzt möchte ich einen Select machen, bei dem ich zum Beispiel eingeben kann. Suche z.B. alle User mit der Sprache Deutsch und Spanisch.
    Dabei soll er gleichzeitig ausgeben, wieviel Prozent meiner Suchkriterien erfüllt sind.

    Das heisst zuerst User mit Spanisch und Deutsch
    dann alle mit Spanisch oder Deutsch
    dann alle anderen.

    Wie muss ich den Select aufbauen?

    Vielen dank im Voraus für ein bißchen Hilfe,

    Markus

  • #2
    Hi,

    wenn ich das richtig verstehe, willst du eigentlich 3 abfragen in einem resultset erhalten!?

    ich würde die anfragen softwaregestützt einzeln absetzten und auswerten. du kannst dir aber auch mal den befehl

    Code:
    union (all)
    zu gemühte führen. mit diesem befehl kannst du mehrere abfragen untereinander schreiben. die ergebnisse werden dann im resultset zusammen gepackt.

    die gedingung ist jedoch, das die datenfelder die gleichen sind. du kannst z.B. kein zahlenfeld in der gleichen spalte haben wie ein textfeld.

    ds dürfte aber je nach dem was genau du abfragen willst relativ unübersichtlich bzw schwer zu analysieren werden. Hab nämlich nicht genau verstanden ob du jetzt 3 prozentwerte bei deiner abfrage erwartest oder oder dir wirklich die namen der personen ausgeben lassen willst.

    des weiteren würde ich dir vorschlagen die relation an ständig aufzulösen. du hast an der stelle nämlich eine m:n beziehung und keine 1:n.

    gruß

    jenneb

    Comment

    Working...
    X