Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VBA, SQL oder wie? Vergleich der Werte aus zwei Tabellen

Empfohlene Antworten

Veröffentlicht

Hallo zusammen,

hab da mal ein Probelem!

Hate eine Tabelle, in der Interessen gespeichert sind. Diese Interessen können in zwei anderen Tabellen, per Listenfeld ausgewählt werden. Nun soll vergliechen werden, ob die Inhalte der Felder in den beiden Tabellen (wo die Interessen ausgewählt wurden) übereinstimmen! Pro Tabelle können 3 Interessen ausgewählt werden.

Die Datenbank basiert auf Access 2000! Wie ist es möglich so einen Vergleich durchzuführen?

DRINGEND HILFE BRAUCH

schonmal vielen lieben Dank

Die AQUA

Also, habe ich dich richtig verstanden?

Gegeben sind drei Tabellen (a, b, c).

Tabelle a und b referenzieren Daten aus der Lookup-Tabelle c.

Du willst nun prüfen, ob in Tabelle a und b die gleichen Daten stehen.

Korrekt?

Das folgende statement gibt alle Einträge zurück, die in beiden Tabellen (a und B) vorhanden sind.

SELECT [[i]interesse[/i]] 

FROM tbl_a

WHERE [[i]interesse[/i]] IN (SELECT [[i]interesse[/i]] FROM tbl_[/code]
Wenn nur ReferenzId's vorhanden sind, könntest du das statement so oder ähnlich variieren:
[code]SELECT [[i]interesse[/i]] FROM tbl_c WHERE [id] IN ( SELECT [[i]interesseId[/i]] FROM tbl_b WHERE [[i]interesseId[/i]] IN ( SELECT [[i]interesseId[/i]] FROM tbl_a))

In diesem Zusammenhang möchte ich noch eine Bitte äußern:

Liebe Leute,

es wäre unendlich hilfreich, wenn ihr zu euren Datenbank-Fragen auch ein paar basics - Tabellen, Strukturen und/oder SQL-dumps - mitgeben könntet.

Es ist überaus mühselig - und eigentlich völlig überflüssig -, häufig erst darüber reflektieren zu müssen, welche Ausgangssituation überhaupt gegeben ist; bevor man in der Lage ist, eine Lösung zu suchen, von der man dann glaubt - oder besser hofft -, dass sie zur tatsächlichen Klärung des Problems beiträgt.

Vielen Dank,

just_me

In access wirst du mit dem SQL-Statment keine Freude haben.

Verschachtelte Selects funktionieren nicht.

Statt dessen muss mit Joins gearbeitet werden.

Hmmmm ....

Erzählt Microsoft hier denn Unsinn?

Hallo nochmal!

Man hat die Möglichkeit in der Tabelle tbl_Interessent bzw dann auf dem Formular, 5 Interessen in Drop-Down Feldern auszuwählen. Diese Interessen kommen aus einem Interessen-Pool!

Dann soll durch einen Klick auf nen Button (Frm_Interessent) in der Tabelle tbl_Studiengang geguckt werden, bei welchem Studiengang die Interessen die der Interessent eingegeben hat als Schlagwort angegeben sind!

Habe eine Abfrage in SQL geschrieben:

SELECT *

FROM tbl_Studiengang

WHERE ((([tbl_Interessent].[interesse1])=[tbl_Studiengang].[schlagwort1])) OR ((([tbl_Interessent].[interesse2])=[tbl_Studiengang].[schlagwort1])) OR ((([tbl_Interessent].[interesse3])=[tbl_Studiengang].[schlagwort1])) OR ((([tbl_Interessent].[interesse4])=[tbl_Studiengang].[schlagwort1])) OR ((([tbl_Interessent].[interesse5])=[tbl_Studiengang].[schlagwort1])) OR ((([tbl_Interessent].[interesse1])=[tbl_Studiengang].[schlagwort2])) OR ((([tbl_Interessent].[interesse2])=[tbl_Studiengang].[schlagwort2])) OR ((([tbl_Interessent].[interesse3])=[tbl_Studiengang].[schlagwort2])) OR ((([tbl_Interessent].[interesse4])=[tbl_Studiengang].[schlagwort2])) OR ((([tbl_Interessent].[interesse5])=[tbl_Studiengang].[schlagwort2])) OR ((([tbl_Interessent].[interesse1])=[tbl_Studiengang].[schlagwort3])) OR ((([tbl_Interessent].[interesse2])=[tbl_Studiengang].[schlagwort3])) OR ((([tbl_Interessent].[interesse3])=[tbl_Studiengang].[schlagwort3])) OR ((([tbl_Interessent].[interesse4])=[tbl_Studiengang].[schlagwort3])) OR ((([tbl_Interessent].[interesse5])=[tbl_Studiengang].[schlagwort3]));

Diese bewirklich auch das was sie soll allerdings kommt ein Fenster, in dem die Interessen 1-5 bzw nur die IDs der Interessen eingegeben werden können, anschließend werden die Studiengänge ausgegeben wo etwas übereinstimmt!

Ich hätte es gern, wenn die Eingabe der Interessen über ein Formular geschieht und dann per Button-Klick ein neues Formular geöffnet wird in dem die Studiengänge drin sind!

Hat jemand ne Idee???

Danke schonmal für eure Antworten!!!

LG

Aqua

SELECT 	*

FROM 	tbl_Studiengang

WHERE

	(Schlagwort1 IN (

		SELECT Interesse1, Interesse2, Interesse3, Interesse4, Interesse5 

		FROM tbl_Interessent)) OR

	(Schlagwort2 IN (

		SELECT Interesse1, Interesse2, Interesse3, Interesse4, Interesse5 

		FROM tbl_Interessent)) OR

	(Schlagwort3 IN (

		SELECT Interesse1, Interesse2, Interesse3, Interesse4, Interesse5 

		FROM tbl_Interessent))

(Vorschlag: Zur Vereinfachung deiner Aufgabe solltest du vielleicht an eine Normalisierung denken.

Oder ist diese Struktur aus einem Decisioncube?)

Und du suchst jetzt was genau?

Jemanden, der die Formulare für dich schreibt?

Oder jemanden, der die Datenbank erstellt?

?!?

Ich suche jemanden der ne Idee hat wie es weiter geht nicht jemanden der die DB für mich schreibt!!!

Keine Panik schaff das auch alleine, wenn du gleich so was schreibst! :(

Hab gedacht hier gibt man sich gegenseitig Tipps, aber war dann wohl nicht so...wenn ich deine Fragen so interpretiere @just_me

Hab gedacht hier gibt man sich gegenseitig Tipps, ...
Korrigiere mich bitte, wenn ich mich irre, aber du bist nur noch einen einzigen Schritt von der endgültigen Lösung deiner Aufgabe entfernt. Wenn du auch dafür noch Tipps haben möchtest, dann hat es imho mehr den Anschein, dass du jemanden suchst, der dich bei der Hand nimmt, als dass du 'Tipps' erfragst.

@just_me

Erzählt Microsoft hier denn Unsinn?

Hab mir den Link angesehen; von verschachtelten Selects keine Spur!

Was meinst du denn?

Hab mir den Link angesehen; von verschachtelten Selects keine Spur!
Bedauerlicherweise lässt die asp.-Seitenkonstruktion des MSDN hier keinen Direktlink zu. Lediglich der Verweis auf das "SELECT"-Statement wurde gesetzt.

Es ist wohl meine Schuld, nicht darauf hingewiesen zu haben, dass es auf der linken Seite noch ein Menü gibt, in welchen man ebenfalls weitere Einträge finden kann.

We apologize for this inconvenience.

Nun, dann möchte ich das hiermit nachholen und mein Gewissen entlasten:

Du findest dort (also in dem Menü auf der linken Seite) - nur drei Einträge unterhalb des "SELECT"-Statement Eintrages - einen weiteren namens "SQL Subqueries" (was die englische Bezeichnung für 'verschachtelte SELECTS' darstellt). Klicke ihn doch einfach mal an und lass dich überraschen...

@AQUAGIRL2802:

Ideen haben wir schon, nur sehen wir auch Fehler im Design der Datenbankstruktur, die eventuell durch Unwissenheit entstanden sind.;)

Fehler im DB-Design koennen spaeter in Erweiterungen/Veraenderungen der DB nicht so leicht behoben werden und koennen u.U. eine komplette Neuentwicklung der DB-Struktur nach sich ziehen.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.