Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   SQL Befehl für Filterung von Datensätzen (https://www.delphipraxis.net/53578-sql-befehl-fuer-filterung-von-datensaetzen.html)

Piro 19. Sep 2005 13:30

Datenbank: MS SQL DB • Version: ??? • Zugriff über: SQL

SQL Befehl für Filterung von Datensätzen
 
Moin Leute,

mein Problem ist wahrscheinlich sehr klein aber mich bringt es seit 2 Tagen um den Verstand.

Folgende Situation:

Tabelle:

<ID> <Name> <Software>
01 Alpha Adobe Reader 7 - Deutsch
02 Alpha WinZip
03 Bravo Adobe Reader 7 - Deutsch
04 Bravo Adobe Acrobat 7.0.1 and Reader 7.0.1 Update
05 Bravo WinZip
06 Charlie Adobe Reader 7 - Deutsch
07 Charlie Adobe Acrobat 7.0.1 and Reader 7.0.1 Update
08 Charlie Adobe Acrobat 7.0.2 and Reader 7.0.2 Update
09 Charlie Winzip

Fall 1: Alle anzeigen die nur Adobe Reader 7 - Deutsch und nicht die Updates haben
Resultat: Alpha

Fall 2: Alle anzeigen die Adobe Reader 7 - Deutsch und das 7.0.1 Update haben
Resultat: Bravo

Fall 3: Alle anzeigen die Adobe Reader 7 - Deutsch und das 7.0.1 und 7.0.2 Update haben
Resultat: Charlie

Hoffentlich weiß einer bescheid. Danke im voraus.

Sven

Helld_River 19. Sep 2005 14:23

Re: SQL Befehl für Filterung von Datensätzen
 
Hi !

1.) SELECT * FROM Tabelle WHERE Software LIKE '%Adobe Reader 7 - Deutsch%' AND NOT(Software LIKE '%UPDATE%')
2.) SELECT * FROM Tabelle WHERE Software LIKE '%Adobe Reader 7 - Deutsch%' AND Software LIKE '%7.0.1%'
3.) SELECT * FROM Tabelle WHERE Software LIKE '%Adobe Reader 7 - Deutsch%' AND Software LIKE '%7.0.1%' AND Software LIKE '%7.0.2%'

Wenn Du Probleme mit der Angabe von 7.0.1 hast, weil der DB-Server das eventuell als Zahl interpretiert, dann schau mal nach einem Befehl wie STRING() oder so.

Hoffe, deine Fragestellung richtig versatanden zu haben !

Gruß, Helld

marabu 19. Sep 2005 14:41

Re: SQL Befehl für Filterung von Datensätzen
 
Hi Sven,

Fall 1 sieht mir nach dem hier aus:

SQL-Code:
select distinct name from swinv
where name in (select name from swinv where software like 'Adobe Reader 7 - Deutsch')
and not name in (select name from swinv where software like 'Adobe % Update')
Der Rest geht dann wohl nach ähnlichem Muster.

Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:46 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