Abfrage

Hi, suchst du das?

Code:
SELECT DISTINCT <Spalte> FROM <Tabelle> WHERE id = 0815

Wenn nicht, stell deine Frage bitte etwas genauer.
mfg
 
Da wär ich mir nicht so sicher. Bei GROUP BY wird zumindest mehr oder weniger zufällig eine Zeile genommen. Ich kann mir vorstellen, dass das bei DISTINCT ähnlich ist.
Du könntest folgendes Query verwenden:
Code:
SELECT * FROM Tabelle 
WHERE id=0815 
ORDER BY `Spalte, die die Reihenfolge definiert`
LIMIT 1
Aber warum kommt eine ID mehrfach vor? :confused:

Gruß hpvw
 
MatthiasRedmann hat gesagt.:
also wenn es mehrere Zeilen mit der ID 0815 gibt, liefert "distinct" die Erste?
Danke

Distinct liefert den ersten Datensatz den es findet, auf den eine Bedingung zutrifft. Aber wie hpvw schon richtig angemerkt hat: Wieso gibt es bei dir überhaupt doppelte IDs?
 
MatthiasRedmann hat gesagt.:
Es sind einfach nur Relationen zu anderen Tabellen und heißen auch anders!
*Klugsch...modus an*
Relationen in Datenbanken sind ein Synonym für Tabellen, beinahe im Gegensatz zu der Beudeutung in den meisten anderen Zusammenhängen.
Die relationalen Datenbanken haben ihren Namen nicht von den Verbindungen zwischen Tabellen, sondern von der Abhängigkeit der Nichtschlüssel-Attribute vom Primärschlüssel innerhalb der Tabelle.
Deine IDs sind also Fremdschlüssel, die eine Beziehung beschreiben.
*Klugsch...modus aus*

Was mir gerade noch eingefallen ist: Da DISTINCT nur vollkommen identische Zeilen zusammenfasst, spielt es keine Rolle, ob es die erste oder die letzte der gleichen Zeilen ist.
Das entspricht einem GROUP BY über alle in der Projektion befindlichen Spalten.

Gruß hpvw

PS: Die Quelle, die ich oben für die Projektion angegeben habe, bietet noch mehr. Ich habe die Seite eben über Google gefunden und nur kurz die Kapitel angelesen. Mein erster Eindruck ist, dass es sich dabei um eine hervorragende Einführung in relationale Datenbanken handelt.
 
Code:
... ORDER BY id ASC LIMIT 1 bzw. 2 bzw. 3,1
Wenn es weiterhin um Deine Fremdschlüssel geht, die mehrfach vorkommen:
Code:
... GROUP BY id ASC LIMIT 1 bzw. 2 bzw. 3,1
 

Neue Beiträge

Zurück