![]() |
Datenbank: mysql • Version: 5.x • Zugriff über: devart
Datenbankabfrage exist
Hi,
ich habe ein kleines Problem. Ich habe 2 Tabellen Tabelle 1: ID Kundennummer Tabelle 2: ID Kundennummer Tabelle1.Kundenummer ist natürlich mit Tabell2.Kundennummer verknüpft. Nun möchte ich herrausfinden welcher Datensatz aus Tabelle1 nicht in Tabelle2 existiert und diesen ausgeben.(können auch mehrere sein) |
AW: Datenbankabfrage exist
SQL-Code:
select Tabelle1.ID
from Tabelle1 left join Tabelle2 on Tabelle1.ID = Tabelle2.ID where Tabelle2.ID is NULL |
AW: Datenbankabfrage exist
SQL-Code:
Select
* from tabelle1 t1 where not exists ( select id from Tabelle2 t2 where t2.kundennummer = t1.kundennummer); |
AW: Datenbankabfrage exist
Danke warst schneller, hab es gerade auch raus gefunden :)
Hab allerdings noch ein Problem mit der Komponente von Deavart (UniTable) Wenn ich diesen Code einbauen, macht der mir daraus diesen:
Delphi-Quellcode:
und gibt mir dann natürlich als Fehler inkorrekte Syntax aus
SELECT * FROM `kundendaten AS a LEFT JOIN positionen AS b ON a`.`kd = b`.kd
WHERE b.kd Is NULL Edit: mit mKinzlers Syntax funktioniert es, aber würde mich trotzdem interessieren wie ich bei UniTable auch die 1. Syntax verwenden kann. |
AW: Datenbankabfrage exist
Bei welcher der beiden Lösungen?
|
AW: Datenbankabfrage exist
??? Mach die komische Zeichen da raus
|
AW: Datenbankabfrage exist
Oder weitere rein (an den richtigen Stellen):
SQL-Code:
SELECT * FROM `kundendaten` AS a LEFT JOIN `positionen` AS b ON a.kd = b.kd
WHERE b.kd Is NULL |
AW: Datenbankabfrage exist
Würde ich ja enn ich die Zeichen gesetzt hätte, aber das hat TUniTable selber getan.
In UniTabel habe ich diesen Code eingegeb:
Delphi-Quellcode:
und UniTable selber hat diese Abfrage daus gemacht:SELECT * FROM `kundendaten` AS a LEFT JOIN `positionen` AS b ON a.kd = b.kd WHERE b.kd Is NULL
Delphi-Quellcode:
SELECT * FROM `kundendaten AS a LEFT JOIN positionen AS b ON a`.`kd = b`.kd
WHERE b.kd Is NULL |
AW: Datenbankabfrage exist
Warum TUniTable?
|
AW: Datenbankabfrage exist
Was passiert, wenn du die richtigen einfachen Anführungszeichen nimmst?
|
AW: Datenbankabfrage exist
Lass die einfach weg, schon bei der Eingabe
Ich vermute mal da wird bei Benutzung von diesem Trennzeichen versucht eine Auflösung in Schema.Tabelle.Feld zu erstellen, die hier aber gründlich in die Hose geht |
AW: Datenbankabfrage exist
Zitat:
|
AW: Datenbankabfrage exist
Die Table-Variante ist nur als Rückwärtskompatible Komponente zur BDE zu verstehen
|
AW: Datenbankabfrage exist
Na denn ist das ja auch logisch, denn die DevArts setzen alles immer in ein Select-Statement um (auch T...Table)
Ja und da will er eben eine Tabelle irgendwie interpretieren und das kommt dabei raus |
AW: Datenbankabfrage exist
Gut Danke, dann weiß ich Bescheid, das ich da noch ein bisschen etwas ändern werde.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz