AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL viele OR Verknüpfungen
Thema durchsuchen
Ansicht
Themen-Optionen

SQL viele OR Verknüpfungen

Ein Thema von needatip · begonnen am 29. Jan 2007 · letzter Beitrag vom 30. Jan 2007
Antwort Antwort
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#1

SQL viele OR Verknüpfungen

  Alt 29. Jan 2007, 21:33
Datenbank: MS SQL SERVER • Version: 2000 • Zugriff über: ADO
Hallo,

ich muss eine Abfrage mit vielen OR Verknüpfungen von Delphi zusammenbasteln lassen.
Etwa so:
Delphi-Quellcode:
with MyTable do
begin
SQL.Clear;
SQL.Add('SELECT * FROM test ');
SQL.Add('WHERE Feld1 LIKE ('%blah%');
SQL.Add(
'OR FELD2 LIKE ('%blah%');
SQL.Add('OR FELD3 LIKE ('%blah%');
SQL.Add(
'OR FELD4 LIKE ('%blah%');
SQL.Add('OR FELD5 LIKE ('%blah%');
SQL.Add(
'OR FELD6 LIKE ('%blah%');
.
.
.
usw.
ca. 35 Felder...

kann man die SQL Anweisung nicht zusammenfassen?
wie z. B.
SQL-Code:
SELECT * FROM test
WHERE (Feld1,Feld2,Feld3,Feld4,Feld5,Feld6......) LIKE ('%blah%');
Also irgenwas wie eine Aufzählung der Felder, die dann verglichen werden.
Bitte dringend um Hilfe.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: SQL viele OR Verknüpfungen

  Alt 29. Jan 2007, 21:57
Nein kann man nicht, das Design deiner Tabelle ist dann nicht richtig. Lagere die 35 Felder in eine separate Tabelle aus (35 Zeilen). Jede Zeile enthält neben dem Feld noch einen Verweis auf die ursprüngliche Tabelle, z.B. so:

Tabelle 1: tbID, Balbla (tbId ist der Primary Key)
Tabelle 2: dtID, tbID, Feld (dtID ist der Primary Key)

Deine Abfrage geht dann so:
SQL-Code:
select distinct t1.*
  from Tabelle1 t1 join Tabelle2 t2 on t1.tbid = t2.tbid
where t2.Feld like 'Bla'
oder so:
SQL-Code:
select * from Tabelle1 t1
  where exists (
    select *
      from Tabelle2 t2
     where t2.tbid = t1.tbid and t2.Feld like 'Bla'
    )
oder oder oder.

Und wenn Du dann noch 150 Felder hinzufügen willst, kein Problem.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: SQL viele OR Verknüpfungen

  Alt 30. Jan 2007, 07:26
OK, Danke werd ich wohl dann so machen müssen !
  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 00:55 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