On Thursday 19 July 2007 15:30, Mark W. Farnham wrote: > I'm curious how you're establishing the value that Oracle is returning. Hm, I assumed that 9.2234E+18 is different from 9368617832122679304, which would be 9.3686E+18. I also used Tora for the query, and it displays 9223372036854775807. Stefan > > This could possibly just be a problem with the column format not being wide > enough for a fully expressed displayed answer. > > Regards, > > mwf > > -----Original Message----- > From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] > On Behalf Of Stefan Kuhn > Sent: Thursday, July 19, 2007 8:18 AM > To: oracle-l@xxxxxxxxxxxxx > Subject: bitand functions and NUMBER(20) > > Hi all, > I have got a column defined as NUMBER(20) and want to use bit functions on > it. > It seems that oracle bitand function is restricted in length. To give an > example: > select bitand(10846370260800065548,9368617832122679304) from TABLE; > returns 9.2234E+18, although the second figure is a subset of bits in first > figure. So result should be 9368617832122679304. > To make sure my figures are right, I did > select 10846370260800065548 & 9368617832122679304; > in Mysql and it gave 9368617832122679304. > The problem does arise with figures of a certain length. > What to do best (apart from changing the column type, which I would like to > avoid)? > I hope the question isn't too trivia... > Stefan -- Stefan Kuhn BSc MA IPB Halle AG Bioinformatik & Massenspektrometrie Weinberg 3 06120 Halle http://www.ipb-halle.de http://msbi.bic-gh.de skuhn@xxxxxxxxxxxx Tel. +49 (0) 345 5582 1474 Fax.+49 (0) 345 5582 1409 -- //www.freelists.org/webpage/oracle-l