Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi [IB/FB] Trunc (https://www.delphipraxis.net/72510-%5Bib-fb%5D-trunc.html)

Hansa 1. Jul 2006 21:39

Datenbank: FB 2.0 • Zugriff über: FIBplus

[IB/FB] Trunc
 
Ja, kurze Frage : wo ist Trunc in IB/FB ?

mkinzler 1. Jul 2006 22:11

Re: [IB/FB] Trunc
 
SQL-Code:
select cast( <feld> as integer) from <Tabelle>;

Dax 1. Jul 2006 22:15

Re: [IB/FB] Trunc
 
Meinst du TRUNC wie TRUNCate zum leeren der Tabelle? Gibts glaub ich garnicht. Das einzige was funktionieren würde wäre eine DELETE * FROM (...)...

mkinzler 1. Jul 2006 22:18

Re: [IB/FB] Trunc
 
Zitat:

Meinst du TRUNC wie TRUNCate zum leeren der Tabelle?
Ich denke eher er meint das Abschneiden von Nachkommastellen.

Dax 1. Jul 2006 22:25

Re: [IB/FB] Trunc
 
Hm, bevor Hansa uns mehr Infos gibt, können wir diese Frage nicht entscheiden.

Zu Hansa guck ;)

Hansa 2. Jul 2006 01:01

Re: [IB/FB] Trunc
 
Zitat:

Zitat von mkinzler
SQL-Code:
select cast( <feld> as integer) from <Tabelle>;

So einfach gehts nicht. Selber mal getestet ? Sieht nicht so aus. :roll: Das ergibt lediglich eine Art round. Trunc müßte eigentlich selbsterklärend sein : ja, es geht um das Abschneiden von Nachkommastellen.

Jelly 2. Jul 2006 08:50

Re: [IB/FB] Trunc
 
Zitat:

Zitat von Hansa
So einfach gehts nicht. Selber mal getestet ? Sieht nicht so aus. :roll: Das ergibt lediglich eine Art round.

Probiers mal so:
SQL-Code:
select cast( <feld>-0.5 as int) from <Tabelle>;

mkinzler 2. Jul 2006 10:42

Re: [IB/FB] Trunc
 
Zitat:

So einfach gehts nicht. Selber mal getestet ? Sieht nicht so aus. Rolling Eyes
Meine Testdaten wurden leider alle abgerundet, deshalb hat es zufällig gestimmt und mir ist nicht aufgefallen das gerundet wird.

kiar 2. Jul 2006 11:18

Re: [IB/FB] Trunc
 
moin,

sample udf
hier

raik

Hansa 2. Jul 2006 12:10

Re: [IB/FB] Trunc
 
@kiar: 8) Daß sich die Frage auf das Delphi-Trunc bezog, das liegt in einem Delphi-Forum wohl auf der Hand. Google findet zigtausend Trunc-Ergebnisse. Einige davon beziehen sich aber darauf, einen String abzuschneiden. Genau in diese Kategorie gehört Dein Link auch. :mrgreen:

Jelly's Ansatz ging schon in die richtige Richtung, allerdings nicht bei negativen Werten. So gehts :

SQL-Code:
        IF (PREIS < 0) THEN
          PREIS = CAST ((PREIS+0.5) AS INTEGER);
        ELSE
          PREIS = CAST ((PREIS-0.5) AS INTEGER);


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