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, 4193 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 ..
Neuester Wissensbeitrag
Router & Routing

192.168er Adresse im öffentlichen Netz

(2)

Erfahrungsbericht von visco-c zum Thema Router & Routing ...

Ähnliche Inhalte
Lizenzierung
Pervasive SQL 2000 Lizenzen für Novell Netware gesucht! (3)

Frage von Riki.G zum Thema Lizenzierung ...

Novell Netware
Pervasive.SQL V7 für NetWare - Lizenzen gesucht (2)

Frage von bidlabu zum Thema Novell Netware ...

Batch & Shell
PowerShell-Befehl zum mounten einer tib Datei gesucht (7)

Frage von Koopaaa zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (29)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (22)

Frage von Driphex zum Thema Exchange Server ...

Hyper-V
HYPER V und USB (16)

Frage von Hendrik2586 zum Thema Hyper-V ...

SAN, NAS, DAS
Backupserver für KMU (14)

Frage von Leo-le zum Thema SAN, NAS, DAS ...