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

Kurzschreibweise für SQL-Befehl gesucht

Frage Entwicklung Datenbanken

Mitglied: Maik87

Maik87 (Level 2) - Jetzt verbinden

23.04.2009, aktualisiert 18.10.2012, 4206 Aufrufe, 4 Kommentare

Hallo zusammen,
ich suche eine Kurzschreibweise für folgenden Befehl, da dieser, wie er jetzt dort steht, schwer zu ändern ist:

Select *
from tabelle
where
...
and
(
...
t.feld1 not in (select bla bla bla)
and
t.feld2 not in (select bla bla bla)
and
t.feld3 not in (select bla bla bla)
...)


Der SQL-Befehl in den drei Klammern ist immer der gleiche. Deswegen würd ich ihn gern "zentralisieren".

Gibt es da eine Idee??

Vielen Dank
Maik
Mitglied: maretz
23.04.2009 um 10:49 Uhr
naja - zuerst würde ich mal das "select * ..." entfernen und die Feldnamen eintragen -> da sonst die wartbarkeit grade bei großen Tabellen extrem leidet... Irgendwann fügt doch mal jemand nen Feld in der Mitte ein -> und schon läuft ggf. dein ganzes Programm worin die Abfrage läuft schon ins Nirvana...

Das andere wäre dann die Frage worin du deine Abfrage schreibst... Direkt im SQL oder wird die aus einem Programm erzeugt? In einem Programm kann man z.B. über einen Array gehen (wenn z.B. deine select bla bla bla etwas wie "select id from benutzer" ist -> dann mache ich die Abfrage einmal und speichere die IDs in einem Array... schon spare ich 3 Abfragen).

Alles weitere hängt vom genauen Tabellenaufbau und den Anforderungen ab...
Bitte warten ..
Mitglied: Maik87
23.04.2009 um 10:56 Uhr
Danke für deine schnelle Antwort!!

Zitat von maretz:
naja - zuerst würde ich mal das "select * ..."
entfernen und die Feldnamen eintragen -> da sonst die wartbarkeit
grade bei großen Tabellen extrem leidet... Irgendwann fügt
doch mal jemand nen Feld in der Mitte ein -> und schon läuft
ggf. dein ganzes Programm worin die Abfrage läuft schon ins
Nirvana...

Ich hatte nur keine Lust die ganze Abfrage zu tippen. Es sollte nur beispielhaft sein und die Verschachtelung zu erkennen. Im richtigen Projekt habe ich es mit einzelnen Feldnamen.

Das andere wäre dann die Frage worin du deine Abfrage
schreibst... Direkt im SQL oder wird die aus einem Programm erzeugt?

Mit einem SQL-Programm.

In einem Programm kann man z.B. über einen Array gehen (wenn z.B.
deine select bla bla bla etwas wie "select id from benutzer"
ist -> dann mache ich die Abfrage einmal und speichere die IDs in
einem Array... schon spare ich 3 Abfragen).

Mir ist in reinem SQL leider kein Array bekannt!!

Alles weitere hängt vom genauen Tabellenaufbau und den
Anforderungen ab...

Sag mir was du wissen willst und ich sag es dir ;)


Ich nutze übrigens Oracle, falls es wichtig ist!

Danke dir und allen anderen!!
Bitte warten ..
Mitglied: Biber
23.04.2009, aktualisiert 18.10.2012
Moin Maik87,

auf eine erstaunlich ähnliche Frage hast Du doch schon einem guten zweidrittel Jahr mehrere Antworten bekommen in einem Deiner nach wie vor offenen Beiträge Letzter Datensatz eines bestimmten Kriteriums auslesen.

Ist doch hier die gleiche Mimik.

Grüße
Biber
Bitte warten ..
Mitglied: Netzheimer
04.05.2009 um 15:48 Uhr
Hallo.

Am besten schreibst du dir eine Funktion, die dir die gewünschten Inhalte von Select blabla zurückgibt. Du kannst an eine Funktion auch Parameter übergeben, wenn dies erforderlich sein sollte.

Die Online-Hilfe unter CREATE FUNCTION bietet hierzu sicher einige Möglichkeiten.
Bitte warten ..
Ähnliche Inhalte
Lizenzierung
Pervasive SQL 2000 Lizenzen für Novell Netware gesucht! (3)

Frage von Riki.G zum Thema Lizenzierung ...

Batch & Shell
Mehrzeiligen Powershell-Befehl mit Batch ausführen (3)

Frage von Compu2017 zum Thema Batch & Shell ...

Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

Microsoft
PDF-Browserplugins für IRM-geschützte Inhalte gesucht (2)

Frage von DerWoWusste zum Thema Microsoft ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Windows Server

Exchange 2010 Active Directory und Windows Server 2016

(4)

Erfahrungsbericht von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Internet
gelöst Mitarbeiter surft auf unerwünschter Seite - Wie damit umgehen? (52)

Frage von sabines zum Thema Internet ...

Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

Router & Routing
PFsense - Netzverbindung steht, aber kein Internet vorhanden (24)

Frage von aschmid zum Thema Router & Routing ...

Windows Server
gelöst Windows 2016 Hyper-V und VHDS (19)

Frage von emeriks zum Thema Windows Server ...