MySQL Vergleich über mehrere Tabellen! Join?

I

iNeedYourHelp

Gast
Hallo Leute,
ich habe eine

Code:
Tabelle1 mit den Spalten:
id
typ
string

Im String stehen jetzt mehrere Werte drin,
die ich relational brauche.
Dafür schreibe ich mir gerade ein kleines Programm.

Nun kommen folgende Tabelle für die 3 exitierenden Typen hinzu:
Code:
Tabelle a mit den Spalten:
id
value1...

Code:
Tabelle b mit den Spalten:
id
value1...

und

Code:
Tabelle c mit den Spalten:
id
value1...

Mein Problem ist jetzt, dass ich meine SQL-Abfrage nicht hinbekomme -.-
Die Abfrage soll mir die id's aus Tabelle1 liefern, die nicht in Tabelle a, b, oder c drin sind.

Wie mache ich das am besten?
Mit einem Join?
Es ist auch wichtig, das die Query performant ist, da Tabelle 1 zur Zeit ein paar GB groß ist ô.O
 
I

iNeedYourHelp

Gast
nagut hinbekommen habe ich das jetzt.
leider dauert die abfrage ziemlich lange.

SQL:
select id, typ, string from tabelle1
where ((service_name like '%http%') or (service_name like '%tcp%'))
and (not exists
(select id from tabelle_a where tabelle1.id = tabelle_a.id)
and not exists
(select id from tabelle_b where tabelle1.id = tabelle_b.id)

kann man an der anfrage noch etwas optimieren?
mit join wird es nicht schneller, oder?
 

parabool

Bekanntes Mitglied
Warum setzt du in die Unterabfragen nicht noch den Typ ein als zusätzliche Bedingung (Einschränkung der Suchmenge je Unterabfrage) ?
 
G

Gast2

Gast
Das kann man sicherlich noch optimieren. So wie du es jetzt geschrieben hast werden die beiden subselects für jeden Datensatz aus tabelle1 ausgeführt.
Mit zwei Joins sollte das sehr viel performanter werden.
 
I

iNeedYourHelp

Gast
@parabool:
meinst du
SQL:
SELECT id FROM tabelle_a where tabelle1.id = tabelle_a.id and tabelle1.typ = 'typ_a'
?
Macht das die Query wirklich schneller? Es muss ja immerhin 1 Verglich mehr gemacht werden.

@EikeB:
Welche Joins würdest du da wie anwenden?
Kenne mich mit den Joins leider nicht aus.
Mmn wäre es doch gut aus tabelle_a, _b und _c eine Tabelle tmp zu machen und dann die einträge aus tabelle1 auszuwählen, die nicht in tmp drin sind, oder?
 

stone71

Mitglied
Warum machst Du denn aus der ganzen Geschichte so viele Tabellen? Es wäre vielleicht sogar sinnvoll über das Design der Tabellen noch einmal zu schauen. Vielleicht könnte man mit Hilfe eines besseren Tabellendesigns die Sache viel besser optimieren!?
Wenn Du dies einmal ein bisschen besser beschreiben könntest, dann wäre vielleicht noch viel mehr möglich.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Vergleich von Daten in verschiedenen Tabellen Datenbankprogrammierung 1
Q string Vergleich Datenbankprogrammierung 2
W MySQL-Connector funktioniert nicht über WLAN -> MacOS Datenbankprogrammierung 10
btwX28 mysql abfrage über phpmyadmin Datenbankprogrammierung 8
Beginner22 Zugriff auf Datenbank aus Java über mariadb Datenbankprogrammierung 3
tom.j85 Objekt in OneToOne Beziehung über http request anzeigen lassen Datenbankprogrammierung 3
N Java Abfrage über GUI, Daten hinzufügen Datenbankprogrammierung 54
C Datenbank anlegen und über eine Website mit Daten füllen? Datenbankprogrammierung 25
J Nur CRUD über Datenbank Klasse, oder auch mehr ? Datenbankprogrammierung 2
M MySQL Passwort Clientseitig ändern und über Button ausführen Datenbankprogrammierung 0
F MySQL Einfügen von Datensätzen über Java Datenbankprogrammierung 8
L Oracle Datenbank über Java aufrufen Datenbankprogrammierung 29
K HSQLDB .sql Script Aufruf über Java Datenbankprogrammierung 7
D JPQL- Query über mehrere Tabellen Datenbankprogrammierung 7
B MySQL: Port ändern über GUI? Wo und wie Port ändern? Datenbankprogrammierung 0
J mySQL- Java Application - Zugriff über Internet Datenbankprogrammierung 3
M Feedback für neues Buch über "Java und Datenbanken" erwünscht Datenbankprogrammierung 8
L H2 Embedded H2 Datenbank über Netzwerk zugreifen? Datenbankprogrammierung 0
W SQL-Statement Datenbankabfrage über Yahoo Datenbankprogrammierung 0
J wie mit resultset.next() über Datensätze iterieren? Datenbankprogrammierung 15
dat_vin JavaFX Datenbankverbindung über JPA und MySQL Error Datenbankprogrammierung 0
E Wie kann man mit einer ID-Spalte über eine Parameterübergabe auf eine Seite verweisen? Datenbankprogrammierung 17
I JPA - BoneCP über die persistence.xml konfigurieren Datenbankprogrammierung 0
AssELAss Oracle Wildcard-Suche über zwei Felder Datenbankprogrammierung 5
M MySQL Insert über mehrere Tabellen Datenbankprogrammierung 7
K SQL Befehle über java Oberfläche Datenbankprogrammierung 4
S MySQL Abfrage über mehrere Tabellen + Einträge werden überschrieben Datenbankprogrammierung 1
G JDBC Connect nur über SID fehlerfrei möglich Datenbankprogrammierung 2
M Information über Änderungen Datenbankprogrammierung 8
F MySQL Daten ändern über Java Datenbankprogrammierung 3
C SQL-Statement SELECT über 3 Tabellen Datenbankprogrammierung 5
B DB Anbindung über Tomcat Datenbankprogrammierung 16
S ID Wert von Insert über jdbcTemplate.update Datenbankprogrammierung 3
S mySQL Manipulation über JavaServer Faces (Tutorial gesucht) Datenbankprogrammierung 10
C Mit jsp über Java eine DB Abfrage durchführen --> java.lang.ClassNotFoundException Datenbankprogrammierung 4
C H2 über DynDNS Datenbankprogrammierung 2
D Frage zu INSERTS über mehrere Datenbanktabellen Datenbankprogrammierung 3
J MySQL Verbindung über JDBC scheitert immer Datenbankprogrammierung 2
C Datenbanklogin über JSF Datenbankprogrammierung 3
G JOIN Abfrage über mehrere Tabellen Datenbankprogrammierung 15
O MySQL sql Datei einzelner Tabellen erzeugen (über Java Programm) Datenbankprogrammierung 6
J mit java in access DB über odbc/jdbc Datenbankprogrammierung 2
G SQL Abfrage über mehrere Tabellen Datenbankprogrammierung 28
1 Aufruf einer View über Java Gui Datenbankprogrammierung 5
S SQL inner join bei >10 Tabellen über 2 Variablen Datenbankprogrammierung 2
M Messenger über MySQL sinnvoll? Datenbankprogrammierung 7
N Wie kann ich Zugriff auf eine MS Access DB (mit JDBC) über Netzwerk erreichen? Datenbankprogrammierung 7
T DB2 delete/update über 2 Tabellen Datenbankprogrammierung 2
multiholle SQL Querry über mehrere Spalten Datenbankprogrammierung 12
klattiator Aufklärung über OR-Mapping Datenbankprogrammierung 7
B Mysql über jdbc sehr langsam Datenbankprogrammierung 4
X Abfrage über 2 Tabellen mit Tücken Datenbankprogrammierung 3
M Auswerten über drei Tabellen Datenbankprogrammierung 2
O Mittelwert über mehrere Zeilen Datenbankprogrammierung 11
P Benötige etwas Hilfe bei Datanbankabfrage über Java Datenbankprogrammierung 3
R Abfrage über Zwischentabellen? Datenbankprogrammierung 2
N Unbekannte Datenbank über Metadaten auslesen? Datenbankprogrammierung 9
S Select über mehrere Datenbanksysteme Datenbankprogrammierung 14
S Mysql abfrage über 2 tabellen. Datenbankprogrammierung 10
U Java und Mysql Problem über 24:00:00 Stunden Datenbankprogrammierung 4
M MySQL-Datenbank über Java ansprechen Datenbankprogrammierung 5
W Zwei Fragen über JDBC und MySQL Datenbankprogrammierung 2
G Funktionen/Arbeitsschritte über Menü sinnvoll aufteilen Datenbankprogrammierung 3
G JDBC über Proxy Datenbankprogrammierung 21
C Hausarbeit -> Datenbankzugriff über JDBC Datenbankprogrammierung 2
F Login per JDBC über PHP-Skript? Datenbankprogrammierung 4
R Kann man mit JDBC auch über das Internet auf DB zugreifen? Datenbankprogrammierung 4
B Hilfe! Problem bei Verbindung über JDBC/ODBC Datenbankprogrammierung 4
S Java Verbindung über das Netzwerk Datenbankprogrammierung 4
N Abfrage über zwei Datenbanken Datenbankprogrammierung 9
V Werte über Konsole in Datenbank schreiben Datenbankprogrammierung 2
D Datenbank zugriff über Client/Server Datenbankprogrammierung 4
V Access-Transaktion über jdbc:odbc Datenbankprogrammierung 4
G Infos über implementierungsspezifische Aspekte d. DB -Progr. Datenbankprogrammierung 2
T Problem bei MySQL Connect über JavaBean Datenbankprogrammierung 3
OnDemand Daten auf mehrere Tabellen aufteilen oder Spalten nutzen Datenbankprogrammierung 2
J Mehrere WHERE Werte benutzen Datenbankprogrammierung 2
G ID zuweisung eines TerminKalenders (mehrere Kalender) Datenbankprogrammierung 8
K Mehrere Benutzer Datenbankprogrammierung 6
O HSQLDB Eine Entität, mehrere Tabellen Datenbankprogrammierung 8
S Abfrage von Gruppentickets(Mehrere Resorts an einem Tag) Datenbankprogrammierung 1
E Mehrere Tabellenspalten mit INNER JOIN verknüpfen Datenbankprogrammierung 1
Androbin [Serializing] Mehrere Objekte in einer einzigen Datei speichern Datenbankprogrammierung 1
S HSQLDB Mehrere PreparedStatements ausführen Datenbankprogrammierung 3
J Mehrere Inserts bei Fehlschlag abbrechen Datenbankprogrammierung 2
P Mit Hibernate mehrere Datensätze löschen Datenbankprogrammierung 7
F [SQLite] Mehrere Datensätze einfügen Datenbankprogrammierung 12
M DB: Mehrere Zeilen in einer Zeile zusammenführen Datenbankprogrammierung 10
U Nur den ersten Datensatz löschen wenn mehrere gleiche da sind Datenbankprogrammierung 2
O eine Tabelle hat mehrere PrimKey mit dem selben Wert Datenbankprogrammierung 9
T Theoriefrage : mehrere User vs gleichen Datensatz Datenbankprogrammierung 4
N mehrere Abfragen nacheinander wie mit MS Access mit JAVA Datenbankprogrammierung 3
G Mehrere Tabellen abfragen Datenbankprogrammierung 7
D mehrere Datensätze in ein Listenfeld Datenbankprogrammierung 2
T JAVA JDBC mehrere Anfragen direkt hintereinander ausführen Datenbankprogrammierung 2
M Mehrere Tabellen zusammenführen Datenbankprogrammierung 4
W Prepared Statement mehrere Zeichenketten Datenbankprogrammierung 4
F Mehrere unterschiedliche ResultSets Datenbankprogrammierung 7
P [Hibernate] Mehrere Keys in einem <set> Datenbankprogrammierung 11
G Insert-anweisung mehrere Varianten eine geht Datenbankprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben