![]() |
Datenbank: mdb • Zugriff über: ado
Abfrage vereinfachen
Hiho,
kann man diese Abfragen zu einer einzigen vereinfachen? Es zu viele Themen dazu, dass ich nicht weiß welche die richtige Lösung dafür ist:
Delphi-Quellcode:
so das alle Spalten für eine weiterverarbeitung in vars gepackt
adoquer.SQL.Add('SELECT * FROM kochbuch WHERE ID='+IntToStr(tg1)');
adoquer1.SQL.Add('SELECT * FROM zutaten WHERE ID='+IntToStr(tg1)'); werden können... |
Re: Abfrage vereinfachen
SQL-Code:
Wobei ich den Zusammenhang der beiden Tabellen noch nicht verstanden habe.
SELECT K.*, Z.*
FROM kochbuch K, zutaten Z WHERE K.ID=:k_id AND Z.ID=:z_id |
Re: Abfrage vereinfachen
Danke DeddyH
wenn: WHERE K.ID=:k_id AND Z.ID=:z_id würden sie sich doch nur untereinander vergleichen?! aber für meinen Fall: ID='+IntToStr(tg1) wird die Bedingung von "aussen" geliefert. Wie soll das dann gehen. Zum Zusammenhang: aus beiden tabellen werden daten ausgelesen die anschliessend in eine dritte geschrieben werden, sozusagen als ergebnis. |
Re: Abfrage vereinfachen
Wieso sollten sie untereinander verglichen werden? Das ist kein Join. Anders wäre das bei
SQL-Code:
WHERE K.ID = Z.ID
|
Re: Abfrage vereinfachen
Wie sehen die beiden Tabellen aus?
Wie soll die zieltabelle aussehen? Union? |
Re: Abfrage vereinfachen
so zum Beispiel:
Tabelle 1: id,rezeptname,kategorie,kalorien,naehrwert,menge Tabelle 2: rezeptnr,zutatnr,menge jetzt alles zusammen NIMM * von t1 und * von t2 WENN id=re.text und rezeptnr=re.text das alles dann in variablen speichern die ich dann benötige Ich hoffe das die einigermassen verständlich war |
Re: Abfrage vereinfachen
Hast Du meine Abfrage mal ausprobiert?
|
Re: Abfrage vereinfachen
So sieht es aber ganz anders aus. Die beiden Tabellen stehen nicht in einem 1:1 sondern in einem 1:n-Verhältnis.
|
Re: Abfrage vereinfachen
Wäre das nicht eher eine m:n-Beziehung zwischen Rezept und Zutat? Zwar kenne ich das Datenmodell nicht, aber das erscheint mir logisch.
|
Re: Abfrage vereinfachen
Danke Leute
wie am anfang erwähnt geht das ja mit 2 abfragen auch zum ergebnis. Ich wollte es in eine packen, wenn das geht. Denn dann stopfe ich die daten in 2 querys bzw datasets |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:55 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