English 中文(简体)
陈述时的案件询问
原标题:Queries on case when statement

在我陈述案情时插入案件期间,由于我的情况,分册将自动在任何固定号码后面再加0。

例如:

INSERT INTO test
            (test_date,
             testno,
             hours)
 SELECT  20-OCT-2010 ,
        1234 ,
       CASE
         WHEN Extract(DAY FROM( endtime - starttime )) >= 1 THEN (
         Extract(DAY FROM(
                         endtime - starttime ))
         * 24 + Extract
         (HOUR FROM(
       endtime - starttime
       )) )
         WHEN starttime IS NULL
              AND endtime IS NULL THEN 0
         ELSE ( Extract(HOUR FROM( endtime - starttime )) )
       END
       ||  
       || CASE
            WHEN endtime IS NULL
                 AND starttime IS NULL THEN 0
            ELSE Extract(MINUTE FROM ( endtime - starttime )) / 60
          END AS hours
FROM   testtime 

我从上述发言中取得了以下成果:

Test_Date         TestNo           Hours
20-OCT-2010        1234            140

预期结果:

Test_Date         TestNo           Hours
20-OCT-2010        1234            14

My data type for hours is number (4,2) My error is due to that if the starttime and endtime for minute is null, it will auto add an 0 behind it. Even i change the 0 to null, it will still add 0 behind.

可否知道还有另一种方式来分配零价值?

增 编

最佳回答

不要压缩小时数和小时数,而是逐个逐个计算,你应当增加。 例如,3个小时和0分钟为3 + 0 = 3/code>个小时,而不是3 <> ><0> = 30/code>小时。

换言之,<<>条码>改为<>条码>。

问题回答

暂无回答




相关问题
Export tables from SQL Server to be imported to Oracle 10g

I m trying to export some tables from SQL Server 2005 and then create those tables and populate them in Oracle. I have about 10 tables, varying from 4 columns up to 25. I m not using any constraints/...

Connecting to Oracle 10g with ODBC from Excel VBA

The following code works. the connection opens fine but recordset.recordCount always returns -1 when there is data in the table. ANd If I try to call any methods/properties on recordset it crashes ...

How to make a one to one left outer join?

I was wondering, is there a way to make a kind of one to one left outer join: I need a join that matches say table A with table B, for each record on table A it must search for its pair on table B, ...

Insert if not exists Oracle

I need to be able to run an Oracle query which goes to insert a number of rows, but it also checks to see if a primary key exists and if it does, then it skips that insert. Something like: INSERT ALL ...

How can I store NULLs in NOT NULL field?

I just came across NULL values in NOT-NULL fields in our test database. How could they get there? I know that NOT-NULL constraints can be altered with NOVALIDATE clause, but that would change table s ...

Type reference scope

I m studying databases and am currently working on a object-relational DB project and I ve encountered a small problem with the number of possible constraints in an object table. I m using "Database ...

OracleParameter and DBNull.Value

we have a table in an Oracle Database which contains a column with the type Char(3 Byte). Now we use a parameterized sql to select some rows with a DBNull.Value and it doesn t work: OracleCommand ...