0

Oracle データベースを使用しています。

21 歳から 40 歳までのすべてのデータを印刷するにはどうすればよいですか?

CREATE TABLE    EMPLOYEE(
  ENum      varchar2(10)    not null,
  EName     varchar2(70),
  EDOB      date,
  ECity     varchar2(70),
  EStreet       varchar2(70),
  EHouse#            varchar2(10),

  constraint employee_pkey primary key (ENum)
);

私はこのように見える大まかな考えを持っていますが、AGE は有効な識別子ではないため、それが間違っていることはわかっています。では、代わりに Select Case を使用する必要がありますか?

SELECT * FROM EMPLOYEE 
WHERE Age = ((sysdate - EDOB)/365.25)
AND EDOB BETWEEN 21 and 40;
4

2 に答える 2

0

これを試して

ここで、((sysdate - edob)/365.25) は 21 から 40 の間

于 2013-10-31T14:53:19.230 に答える
0
SELECT * FROM EMPLOYEE 
WHERE extract(year from sysdate) - extract(year from EDOB) 
BETWEEN 21 and 40;
于 2013-10-31T14:56:09.430 に答える