Top-Themen

Aktuelle Themen (A bis Z)

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

Probleme mit SQL Statement im Oracle SQL Developer

Mitglied: gex01

gex01 (Level 1) - Jetzt verbinden

10.01.2008, aktualisiert 11.01.2008, 16409 Aufrufe, 4 Kommentare

Datenbank: Oracle 10g

Hallo ich möchte gerne den TOP 1 Befehl von SQL nutzen und habe daher folgenden Befehl gebastelt:

select top 1 from Tabelle where Spalte = Wert

Wenn ich diesen Befehl allerdings ausführen will erhalte ich die Fehlermeldung 923:
"FROM Keyword not found where expected"

Auch der Befehl:

select top 1 Spalte from Tabelle where Spalte = Wert

brachte keinen Erfolg.

Ich habe mal gehört das der Befehl "TOP" nicht überall unterstützt wird.
Da ich Anfänger in diesem Bereich bin wollte ich nun fragen, ob dem so ist, bzw. wo ich die mir zur Verfügung stehende Syntax finden kann ...

Vielen Dank

Gruß
Björn
Mitglied: SvenGuenter
11.01.2008 um 09:09 Uhr
SELECT product, descr, email
FROM products
WHERE ROWNUM = 1

ist das äquivalent zu Select TOP1


wenn du die ersten 10 Sätze haben willst

SELECT product, descr, email
FROM products
WHERE ROWNUM <= 10

Zur Info nebenbei in MySQL ist es

SELECT product, descr, email
FROM products
LIMIT 10
Bitte warten ..
Mitglied: gex01
11.01.2008 um 14:44 Uhr
Also, vielleicht fange ich noch mal etwas weiter oben an ...
Eigentlich will ich erreichen, dass er nach dem ersten gefundenen Datensatz mit der Suche aufhört und nicht noch weiter die Daten durchsucht.

Bsp.: Finde den ersten (und nur den ersten) Datensatz in dem in der Spalte Products 'Bier' vorkommt und zeige diesen an, ohne danach weiter durch die Daten zu suchen. Will damit erreichen, dass er bei einer Tabelle von 10 Mio Zeilen nur bis zum ersten Treffer sucht und nicht bis zum Ende.

Dies soll der select top 1 können, der aber leider nicht funktioniert ( ebenso wie auch der limit nicht funktioniert).

Der where rownum ist hierfür leider nicht geeignet, da ich ja nicht weiss in welcher Zeile der Treffer steht.
Bitte warten ..
Mitglied: SvenGuenter
11.01.2008 um 15:23 Uhr
SELECT product, descr, email
FROM products
WHERE ROWNUM <= 1 and product="Bier"


das liefert dir die 1. Zeile wo das Produkt Bier ist.

es geht auch folgendes
SELECT product,etc,etc FROM
( SELECT product,etc,etc FROM Products Where Product = 'Bier')
WHERE rownum <= 1

Das ist übrigens die von Oracle empfohlene Schreibweise
Erläuterung
selektiere product,etc,etc aus der selektion produkt,etc,etc von produkt wo produklt gleich 'Bier' ist und daraus nur die erste reihe.


[edit] No problem Biber freue mich das ich mal schneller als du war ;o) [/edit]

Wie ich schon Schrieb Top 1 ist MSSQL und Limit isr MYSQL diese Befehle kannst du NICHT verwenden
Bitte warten ..
Mitglied: Biber
11.01.2008 um 15:30 Uhr
Moin gex01,

SvenGuenther hat schon ziemlich recht mit der ROWNUM-Syntax.
Natürlich macht es nur einen Sinn, wenn Du Deine bisherige WHERE-Klausel auch (als erstes) mit beibehältst.

01.
SELECT product, descr, email 
02.
FROM products  
03.
WHERE products LIKE '%Bier%'  
04.
and ROWNUM = 1
Das wäre dann das Äquivalent zum "TOP x,y" oder "FETCH FIRST x ROWs ONLY" aus anderen "Standard"-SQL-Datenbankprodukten.

Grüße
Biber
[Edit] Sorry, SvenGuenther, hab zu langsam getippt [/Edit]
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Oracle SQL - Developer - Import von CSV
Frage von 94451Datenbanken

Hallo, mit dem SQL developer ist es ziemlich einfach Daten als CSV 'automatisiert' zu exportieren: H:\auto\export_archive90.sql; Datei: allerdings habe ...

Datenbanken

Oracle SQL Developer - Syntaxfrage bei Sonderzeichen im String

gelöst Frage von DrDX2007Datenbanken1 Kommentar

Hallo zusammen, ich habe gerade ein kleines Problemchen, zu dem ich einfach keine Lösung finden kann. Ich möchte mit ...

Datenbanken

Problem mit einem SQL Statement

gelöst Frage von sammy65Datenbanken2 Kommentare

Hallo zusammen, ich habe folgendes Problem mit einem SQL Select Befehl: Ergebnis sollen alle Datensätze sein, die 1. In ...

Datenbanken

SQL Statement auseinandernehmen Like

gelöst Frage von H41mSh1C0RDatenbanken20 Kommentare

Hi@All, Ziel: Beim erstellen eines Reports existiert ein Feld in der eine bestimmte OU ausgewählt werden kann. Wird keine ...

Neue Wissensbeiträge
Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 5 StundenGoogle Android2 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Sicherheit

Intel gibt neue Spectre V2-Microcode-Updates frei (20.02.2018)

Information von kgborn vor 5 StundenSicherheit

Intel hat zum 20. Februar 2018 weitere Microcode-Updates für OEMs freigegeben, um Systeme mit neueren Prozessoren gegen die Spectre ...

Microsoft
ARD-Doku - Das Microsoft Dilemma
Tipp von Knorkator vor 8 StundenMicrosoft3 Kommentare

Hallo zusammen, vor einigen Tagen lief in der ARD u.a. Reportage. Das Youtube Video dazu dürfte länger verfügbar sein. ...

Windows 10

Neue Sicherheitslücke in Windows 10 (Version 1709) durch Google öffentlich geworden

Information von kgborn vor 1 TagWindows 10

Vor ein paar Tagen haben Googles Sicherheitsforscher vom Projekt Zero eine Sicherheitslücke im Edge-Browser publiziert. Jetzt wurde eine weitere ...

Heiß diskutierte Inhalte
Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server39 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Router & Routing
ISC DHCP 2 Subnetze
gelöst Frage von janosch12Router & Routing18 Kommentare

Hallo, ich betreibe bei mir im Netzwerk einen ISC DHCP Server auf Debian, der DHCP verwaltet aktuell ein /24 ...

CPU, RAM, Mainboards
32 gb RAM zu wenig?
Frage von pcguyCPU, RAM, Mainboards13 Kommentare

Hallo zusammen, mein PC verfügt über 32GB Ram. Nun kriege ich bei grossen Dateien im Illustrator die Fehlermeldung das ...