Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Problem bei SQL-Abfrage

Frage Entwicklung Datenbanken

Mitglied: CeMeNt

CeMeNt (Level 2) - Jetzt verbinden

28.09.2009 um 13:50 Uhr, 3835 Aufrufe, 5 Kommentare

Moin Leute,

ich habe im Access eine Tabelle, mit einer Spalte "Auftragsnummer" und einer Spalte "Auftragsname" (sowie viele weitere Spalten).

Wie muß wohl die Syntax für eine SQL-Abfrage lauten, damit jede Auftragsnummer nur einmal in der Liste auftaucht?

Daneben soll dann natürlich der Auftragsname auftauchen.

Eine Kleinigkeit noch mehr:
Die Tabelle wurde "per Hand" erstellt. Somit kann es sein, dass im Auftragsnamen z.B. mal "Hauptstraße 1" oder "Hauptstr. 1" steht.

Trotzdem soll die "Auftragsnummer" nur einmal aufgelistet werden.
Daneben könnte dann z.B. der Auftragsname stehen, der als erstes gefunden wurde.

Das ist doch für einen SQL-Spezi bestimmt kein Problem, oder?
Leider versagen hier meine (äußerst bescheidenen) SQL-Syntax-Kenntnisse.

Würde mich freuen, wenn mir jemand dabei helfen könnte.

Danke schon mal, Gruß

CeMeNt
Mitglied: SlainteMhath
28.09.2009 um 14:07 Uhr
Moin,

01.
SELECT Auftragsnummer, MAX(Auftragsname)  
02.
FROM Auftraege  
03.
GROUP BY Auftragsnummer
lg
Slainte
Bitte warten ..
Mitglied: 76109
28.09.2009 um 14:16 Uhr
Hallo zusammen!

Sollte mit Distinct (keine Duplikate) gehen:
Select Distinct Auftragsnummer, Autragsname From

Gruß Dieter
Bitte warten ..
Mitglied: Arano
28.09.2009 um 14:49 Uhr
Tag

würde ein
01.
Select Distinct Auftragsnummer, Autragsname From 
nicht aber auch
Nummer Name
1235 Hauptstraße
1235 Hauptstr.
zurückgeben ?
Die Nummern sind zwar gleich, aber beim Namen besteht ein Unterschied.
Er wollte die Nummer ja auch nur einmal in der Ergebnistabelle haben.


~Arano
Bitte warten ..
Mitglied: CeMeNt
28.09.2009 um 14:53 Uhr
Moin Leute,

vielen Dank!

Hatte SlainteMhaths Vorschlag sofort getestet und gesehen, dass das genau die Lösung war, die ich gesucht hatte.

@Dieter:
Danke, Deine Lösung funktioniert sicherlich auch bestens.
Vielleicht teste ich das später noch einmal.

Außerdem habe ich gerade festgestellt, dass ich dafür ja gar keine SQL-Abfrage brauche:

- Zwei Felder auswählen
- "Funktionen" aktivieren
- Auftragsnummer = Gruppieren
- Auftragsname = MAX

ergibt so ziemlich den Code von Slainte:

01.
SELECT Auftraege.[Auftrags-Nr], Max(Auftraege.Auftragsname) AS [Max von Auftragsname] 
02.
FROM Auftraege 
03.
GROUP BY Auftraege.[Auftrags-Nr];
Danke,
Gruß
CeMeNt
Bitte warten ..
Mitglied: 76109
28.09.2009 um 14:56 Uhr
Hallo Arano!

Du hast Recht das funktioniert leider nicht

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Datenbanken
SUM oder AVG in SQL Abfrage dauert viel zu lange warum? (5)

Frage von samet22 zum Thema Datenbanken ...

Datenbanken
gelöst SQL-Abfrage mit MAX() (9)

Frage von FrAmEr zum Thema Datenbanken ...

Datenbanken
gelöst Schleifen in SQL-Abfrage bei 2 Tabellen (2)

Frage von Aximand zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (15)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...