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, 3851 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 ..
Ähnliche Inhalte
Datenbanken
gelöst Hilfe bei SQL-Abfrage (5)

Frage von emeriks zum Thema Datenbanken ...

Datenbanken
gelöst SQL-Abfrage mit "kleiner gleich" funktioniert nicht (2)

Frage von derSESO zum Thema Datenbanken ...

Datenbanken
gelöst SQL Abfrage - Ausgabe von Person mit Privat- und Dienstadresse (3)

Frage von CBruns zum Thema Datenbanken ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (35)

Frage von FA-jka zum Thema Windows 10 ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (15)

Frage von Static zum Thema CMS ...

LAN, WAN, Wireless
Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (15)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...