AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Sql Abfrage über zwei Tabellen
Thema durchsuchen
Ansicht
Themen-Optionen

Sql Abfrage über zwei Tabellen

Ein Thema von kiar · begonnen am 13. Mai 2005 · letzter Beitrag vom 13. Mai 2005
Antwort Antwort
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#1

Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 15:25
Datenbank: FireBird • Zugriff über: ibexpert
Hallo,

stehe gerade etwas neben mir

versuche eine Abfrage zu basteln, welche mir aus zwei Tabellen eine gemeinsame Spalte suchen soll.

erste Tabelle
* Id
* Plz
* Stadt

zweite Tabelle
* Vorwahl
* Stadt

folgendes habe ich versucht
SQL-Code:

SELECT a.Id
       , a.Plz
       , a.Stadt
       , b.Vorwahl
       , b.stadt
FROM Postleitzahlen a
         Left Join
         Import_Vorwahlen b
ON a.Stadt = b.Stadt
keine Diskussion über Perfomance bitte. Ist ne einmalige Sache.

raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 15:28
Gehts vielleicht so?
SQL-Code:
SELECT a.Id
       , a.Plz
       , a.Stadt
       , b.Vorwahl
       , b.stadt
FROM Postleitzahlen a
       , Import_Vorwahlen b
WHERE a.Stadt = b.Stadt
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 16:13
@kiar: Dein Code ist syntaktisch korrekt - was ist deine Frage?

marabu
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#4

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 16:28
hallo marabu,

dann ist die frage, warum er mir nicht die Städte anzeigt, welche in a und b mit den Kriterien über einstimmen.

raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.338 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 16:50
Eventuell ein Problem mit den Feldinhalten.
Hast du geprüft, ob Groß- und Kleinschreibung passt? ('KÖLN' <> 'Köln')
Gibt führende oder folgende Leerzeichen? ('Köln' <> 'Köln ')
Peter
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#6

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 16:57
hallo Peter, war ich auch der meinung.

habe dann folgende Anweisung gemacht:
SQL-Code:
Select b.Vorwahl, b.stadt, a.Stadt
from Import_Vorwahlen b
     join Postleitzahlen a on a.stadt like b.stadt

Where b.Stadt like '%Aschersleben%'
damit sollten zumindesten führenden und nachfolgende zeichen egal sein, oder bin ich da verkehrt.

und es ist definitiv, das Aschersleben in beiden tabellen vorhanden ist.

raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 17:00
Probier mal mit

select a.*, b.vorwahl from Postleitzahlen a, Import_Vorwahlen b where Upper(a.stadt) = Upper(b.stadt) Bei korrekter Handhabung der COLLATION Klausel im DDL Statement müsste dann ein Ergebnis zu sehen sein. Im Gegensatz zu deinem Left Outer Equi Join ist das dann ein Natural Equi Join.

Viel Glück

marabu
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#8

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 17:04
hallo marabu,

Deine Anweisung bringt IBexpert zum Stillstand .
Alle Felder sind Iso 8859_1 . und Upper hatte ich auch schon probiert.

raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 17:14
Das tut mir leid für dich. Ich habe deine Tabellen bei mir nachgestellt - Interbase OE. Funktioniert bestens. Wahrscheinlich hast du gar kein SQL Problem. Eine altes Windows-Motto sagt "Reboot tut gut".
Nur nebenbei: ich sagte COLLATION und du antwortest mit CHARACTER SET.

marabu
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#10

Re: Sql Abfrage über zwei Tabellen

  Alt 13. Mai 2005, 18:09
hallo ,

es liegt an den Werten in der Import_Vorwahlen.

Ich muss mir also die Konvertierung einer Textdatei zu einer Fdb-Tabelle noch mal durch den Kopf gehen lassen.


Dank an Alle

raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz