-1
create table sales
(
     sdate DATE,
     samount varchar2(10)
);

insert into sales values('1-FEB-2016',25000);
insert into sales values('2-FEB-2016',45000);
insert into sales values('3-FEB-2016',25000);
insert into sales values('4-FEB-2016',29000);
insert into sales values('5-FEB-2016',75000);
insert into sales values('6-FEB-2016',90000); 
insert into sales values('7-FEB-2016',38000); 

select 
    to_char(sdate, 'day') 
from sales;

select *
from sales 
where to_char(sdate, 'day') = 'monday';

最後の行に何か問題がありますか?

表示されている出力は、2016 年 2 月 1 日 25000 ではなく、データが見つかりません。

4

5 に答える 5

1

UPPER(to_char(sdate,'fmday'))= 'MONDAY' を使用する必要があります。一般に、NO_DATA がエラーを検出したことを示すスペース パディングがあります。

于 2016-04-02T13:41:47.623 に答える
0

2 番目の値パラメーターは varchar 型であるため、qoutes を配置するか、型を整数に変更する必要があります。

于 2016-04-02T13:31:26.350 に答える
-3

「*」と「from」のギャップ…

ありがとう。

于 2016-04-02T14:04:55.497 に答える