Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL Problem (https://www.delphipraxis.net/92366-sql-problem.html)

manfred_h 18. Mai 2007 18:00

Re: SQL Problem
 
Zitat:

Zitat von mkinzler
SQL-Code:
COUNT( case when MEMBER.AUX_NO >0 and trim(MEMBER.AUX_No) <> '' then MEMBER.AUX_NO else 0 end)

Sorry Trim kenn er nicht ...

Manfred

manfred_h 18. Mai 2007 18:01

Re: SQL Problem
 
Zitat:

Zitat von Udontknow
Zitat:

Zitat von manfred_h
Zitat:

Zitat von mkinzler
Welchen Typ hat das Feld?

AUX_NO T30 /* T30 = VARCHAR(30) */,

Dementsprechend natürlich angepasst:

Delphi-Quellcode:
SELECT CAMPS.C_NO, CAMPS.REG_NO, CAMPS.ZONE_NO, CAMPS.AREA_NO, CAMPS.CITY, CAMPS.COUNTRY, CAMPS.LANG,
COUNT( MEMBER_GID.GIDEON_NO ) COUNT_OF_GIDEON_NO, COUNT( MEMBER_AUX.AUX_NO ) COUNT_OF_AUX_NO
FROM CAMPS
LEFT JOIN MEMBER_GID ON (CAMPS.C_NO = MEMBER_GID.C_NO and MEMBER_GID.GIDEON_NO<>'0')
LEFT JOIN MEMBER_AUX ON (CAMPS.C_NO = MEMBER_AUX.C_NO and MEMBER_AUX.AUX_NO<>'0')
GROUP BY CAMPS.C_NO, CAMPS.REG_NO, CAMPS.ZONE_NO, CAMPS.AREA_NO, CAMPS.CITY, CAMPS.COUNTRY, CAMPS.LANG
ORDER BY CAMPS.CITY
Cu,
Udontknow

Schaue mir das auch gerade an ..

manfred_h 18. Mai 2007 18:15

Re: SQL Problem
 
Zitat:

Zitat von mkinzler
SQL-Code:
COUNT( case when MEMBER.AUX_NO >0 and trim(MEMBER.AUX_No) <> '' then MEMBER.AUX_NO else 0 end)

Habe gerade gesehen das Firebird 2.x Trim unterstüzt ....
Wechsel... :gruebel:
ok das währe dann ein neuer Thread..
Manfred

Udontknow 18. Mai 2007 18:17

Re: SQL Problem
 
Hmmm, ich glaube, die Funktionen sind auch bei 1.5 dabei, aber man muss sie einmal manuell registrieren mit einem SQL-Skript oder so. Da war irgendwas mit dem Stichwort "UDF"... Sorry, zu lange her...

Cu,
Udontknow

manfred_h 18. Mai 2007 18:19

Re: SQL Problem
 
Zitat:

Zitat von Udontknow
Hmmm, ich glaube, die Funktionen sind auch bei 1.5 dabei, aber man muss sie einmal manuell registrieren mit einem SQL-Skript oder so. Da war irgendwas mit dem Stichwort "UDF"... Sorry, zu lange her...

Cu,
Udontknow

Danke schaue mir das an..
Besten Dank dür Deine Tipps. :thumb:

manfred_h 21. Mai 2007 11:00

Re: SQL Problem
 
Hallo

hab nochmals was anderes Probiert.
SQL-Code:
COUNT( CASE WHEN MEMBER.CERT_A = 'True' THEN MEMBER.CERT_A ELSE 'False' END ) COUNT_OF_AUX_NO
Das Problemist das hier alle "Linien" gezählt werden nicht nur die bei denen
das Feld MEMBER.CERT_A True ist??

Ein Tipp?
Manfred

mkinzler 21. Mai 2007 11:18

Re: SQL Problem
 
Count zählt ja die Anzahl der Datensätze, egal welchen Wert diese haben.

manfred_h 21. Mai 2007 11:36

Re: SQL Problem
 
Ja
Du hast mir ja weiter forne einen Tipp gegeben:
SQL-Code:
COUNT( case when MEMBER.AUX_NO > 3 then MEMBER.AUX_NO else 0 end)
und hier werden doch auch "nur" die Datensätze gezählt die >3 sind oder ncht?

Udontknow 21. Mai 2007 11:46

Re: SQL Problem
 
Hallo!

probiere es mal mit "else NULL", dann dürften sie nicht mitgezählt werden.

Unabhängig davon: Funktioniert das von mir vorgeschlagene SQL nicht?

Cu,
Udontknow

manfred_h 21. Mai 2007 11:57

Re: SQL Problem
 
Zitat:

Zitat von Udontknow
Hallo!
probiere es mal mit "else NULL", dann dürften sie nicht mitgezählt werden.

Super das wars :thumb:
SQL-Code:
COUNT( CASE WHEN MEMBER.CERT_A = 'True' THEN MEMBER.CERT_A ELSE NULL END ) COUNT_OF_AUX_NO
geht einwandfrei.

Zitat:

Zitat von Udontknow
Hallo!
Unabhängig davon: Funktioniert das von mir vorgeschlagene SQL nicht?

Hab das nicht hinbekommen. Sorry ..

Danke aber vielmals Euch beiden !!
:cheers: :corky:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:12 Uhr.
Seite 2 von 3     12 3      

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