小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

sql 面試問題

 looline 2006-11-18
最近有 一些面試中的問題,總結(jié)起來看,一是關(guān)于怎樣找出和去除重復(fù)數(shù)據(jù),這在另一個帖子利已有詳細介紹。二是關(guān)于找出某一列里最大或最小的前幾個,或是大于或小于某一個值(最大值或平均值)的數(shù)據(jù)。針對這種情況,再此做一個介紹。

1:找出公司里收入最高的前三名員工:


SQL> select rownum, last_name, salary

 2  from (select last_name, salary

3         from s_emp

4         order by salary desc)

5         where rownum<=3;

    ROWNUM LAST_NAME              SALARY  
---------- ------------------------- ----------
 
        1 Velasquez                                 47508 G
        2 Ropeburn                                 2945l6C.G
        3 Nguyen                                      2897.5
QUVoW
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  =9F}j\
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  J‘
注意:請大家分析一下一下語句為什么不對:dOb{RO
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  bt7]c0
SQL> select rownum, last_name, salary

 2  from s_emp
g:m4>
 3  where rownum<=3
.ny
 4  order by salary desc;
tUJ
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  pqGE\[
   ROWNUM LAST_NAME                     SALARY
!7.
---------- ------------------------- ----------
Y
        1 Velasquez                       4750
YHJ#V
        3 Nagayama                        2660
%p8~
        2 Ngao                            2000
Bb;
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  @
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  g#|E
2
找出表中的某一行或某幾行的數(shù)據(jù):k9
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  mM
1):找出表中第三行數(shù)據(jù):P
用以下方法是不行的,因為rownum后面至可以用<<=,不可以用=,>號和其它的比較符號。+h">^
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Vr$$]h
SQL> select * from s_emp
{
 2  where rownum=3;
O_{
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  /;B
no rows selected
p(
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  1"B
SQL> select * from s_emp
">7
 2  where rownum between 3 and 5;
Dky!m
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  qS
no rows selected
m^)0
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  H_&
正確的方法如下:,~w[KF
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  z7@>Me
SQL> l
/(
 1  select last_name, salary
(?\
 2  from (select rownum a, b.*
ZVwI!
 3        from s_emp b)
N
 4* where a=3
DI
SQL> /
Cu
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  `t
LAST_NAME                     SALARY
d$#>
------------------------- ----------
,/N?UK
Nagayama                        2660
w
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  .$CX
2):找出第三行到第五行之間的數(shù)據(jù):L
SQL> l
]M]~H
 1  select last_name, salary
H
 2  from (select rownum a, b.*
CD5w+
 3        from s_emp b)
om2
 4* where a between 3 and 5
,fQ&,=
SQL> /
R4SS
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  O?D7)
LAST_NAME                     SALARY
5‘
------------------------- ----------6yd
Nagayama                        2660
@L
Quick-To-See                    2755
>
Ropeburn                        2945
Ni‘=r
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  <Lh_VZ
3
:找出那些工資高于他們所在部門的平均工資的員工。I‘R*u
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ;7Z
1):第一種方法:5acm6S
SQL> select last_name, dept_id, salary
(
 2  from s_emp a
g1}+7
 3  where salary>(select avg(salary)
S-(
 4                from s_emp
2ksQsY
 5                where dept_id=a.dept_id);
PZRM
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  WFa=Fa
LAST_NAME                    DEPT_ID     SALARY
_f7
------------------------- ---------- ----------
3x-v0
Velasquez                         50       4750
r6h*8
Urguhart                          41       2280
yECF*
Menchu                            42       2375
TLoS/‘
Biri                              43       2090
^xJ
Catchpole                         44       2470
ZS,
Havel                             45     2483.3
;R`$_
Nguyen                            34     2897.5
pK\=Q$
Maduro                            41       2660
?OZ_(:
Nozaki                            42       2280
wR
Schwartz                          45       2090
`
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  AtMr
10 rows selected.
loa
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  q8a{
2):第二種方法:5AH1
SQL> l
=\]n
 1  select a.last_name, a.salary, a.dept_id, b.avgsal
!NZW2d
 2  from s_emp a, (select dept_id, avg(salary) avgsal
7P<2H;
 3               from s_emp
)(o?
 4               group by dept_id) b
(a5
 5  where a.dept_id=b.dept_id
-6
 6* and a.salary>b.avgsal
Z
SQL> /
‘^NJ
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  7s/
LAST_NAME                     SALARY    DEPT_ID     AVGSAL
CX@
------------------------- ---------- ---------- ----------
j
Velasquez                       4750         50     3847.5
}@7
Urguhart                        2280         41     2181.5
_m
Menchu                          2375         42 2055.16667
ks5
Biri                            2090         43       1710
I/Q
Catchpole                       2470         44       1995
k
Havel                         2483.3         45     2069.1
,H
Nguyen                        2897.5         34       2204
nB
Maduro                          2660         41     2181.5
<&
Nozaki                          2280         42 2055.16667
88W
Schwartz                        2090         45     2069.1
"L$Aht
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  @3`tD~
10 rows selected.
p3Q#b
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  pV[@QT
4
:找出那些工資高于他們所在部門的manager的工資的員工。Y^;‘
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  5z
SQL> l
g!O`?~
 1  select id, last_name, salary, manager_id
a
 2  from s_emp a
e8wG
 3  where salary>(select salary
b)-r
 4                from s_emp
flzfJG
 5*               where id=a.manager_id)
|/t)yO
SQL> /
{Nwt
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  *^0LJ
       ID LAST_NAME                     SALARY MANAGER_ID
CQV
---------- ------------------------- ---------- ----------
=Il
        6 Urguhart                        2280          2
If@
        7 Menchu                          2375          2
j:QMG
        8 Biri                            2090          2
wjkW.!
        9 Catchpole                       2470          2
3]
       10 Havel                         2483.3          2f&&MPS
       12 Giljum                          2831          3
8NT<!
       13 Sedeghi                       2878.5          3
_
       14 Nguyen                        2897.5          3
b@
       15 Dumas                           2755          3
${
       16 Maduro                          2660          6Kg
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Zu
10 rows selected.
Uk2fN

第一題:有兩個表分別如下:=Z<
A(varchar(32) NAME,int GRADE)*{
數(shù)據(jù)::WyN$
ZHANGSHAN 80
R
LISI      60
N
WANGWU    84
#
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  m]P
B(varchar(32) NAME,int AGE)[!
數(shù)據(jù):Hi)Y:7
ZHANGSHAN 26
=(
LISI      24
@
WANGWU    26
1>
WUTIAN    26
~.yj4
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  X@~~O
1)寫SQL語句得到如下查詢結(jié)果:>g1\oj
NAME      GRADE   AGE    
C
ZHANGSHAN 80      26
q5IV
LISI      60      24
sw
WANGWU    84      262c. l
WUTIAN    NULL    26
Z]
疑問:這里的沒有成績的那個人的記錄怎么得到呢?C#~,Q
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  `
2)寫SQl語句根據(jù)名字(NAME)相同按年齡(AGE)分組得到不同年齡的人的平均成績,并寫出結(jié)果。f${4\n
疑問:按照名字相同,WUTIAN這個人沒有成績該不該把他統(tǒng)計在內(nèi)呢?8B<
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  t%#
3)還有一問具體數(shù)據(jù)記不清了,比上兩問更怪。y#1\^m


 

 

 

 

 

[這個貼子最后由SunOne 2003/12/30 04:11pm 編輯]m
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ;(
第二題:有一個數(shù)據(jù)庫表dept中有如下數(shù)據(jù):3!|-
id_no id_name
we#
1000  S1L&@U
1001  S2
.$]K
1002  S3
1?
1003  S4
<q(SlO
1000  S5
p8
1000  S6
gZ~&>=
1001  S7
/
表中有id_no重復(fù),如id_no1000的有3條記錄,如id_no1001的有2條記錄,z-XS
現(xiàn)在要按照id_no給表建索引,需要刪除id_no重復(fù)了的那些記錄,但不能刪掉所有擁有該id_no的記錄,必需保留一條擁有該id_no的記錄(id_no1000的只剩下一條記錄)7
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  (
(1)
請寫出SQl語句(或SQL語句組),查詢所有id_no重復(fù)的記錄。bxt
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  qwZ239
(2)
請寫出SQl語句實現(xiàn)題目要求的結(jié)果。

 

 

1:©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  SWT
SQL> create table a
hCu
 2  (name varchar2(32),
t
 3  grade int);
fHYm
Table created.
j|
SQL> insert into a_t
y5.u
 2  values(‘&a‘,&b);
Vk-~\y
Enter value for a: zhangshan
tS
Enter value for b: 80
hYTG&
old   2: values(‘&a‘,&b)
7]bgW
new   2: values(‘zhangshan‘,80)
#sQukk
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  )dD>M:
1 row created.
5
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  >ic5
SQL> /
Nb>#
Enter value for a: lisi
|FS|3
Enter value for b: 60
[7s
old   2: values(‘&a‘,&b)
6
new   2: values(‘lisi‘,60)
^s-a
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  hR-Bni
1 row created.
3
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Cc]
SQL> /
iX@
Enter value for a: wangwu
9J
Enter value for b: 84
rR`
old   2: values(‘&a‘,&b)
I z4Bn
new   2: values(‘wangwu‘,84)
u
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Cwdw,M
1 row created.
‘&F4H&
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  zU
SQL> commit;
pS#~f
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  R"
Commit complete.
I@b}
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  X#{! 9
SQL> create table b_t
%;R
 2  (name varchar2(32),
71
 3  age int);
x;SQ^
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Q+z
Table created.
!M
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  L|
SQL> insert into b_t
J
 2  values(‘&a‘,&b);
UK|‘?]
Enter value for a: zhangshan
ZA+X:
Enter value for b: 26
:x`.M(
old   2: values(‘&a‘,&b)
wbi[
new   2: values(‘zhangshan‘,26)
M=A
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  #
1 row created.6f4
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  *h5
SQL> /
#u
Enter value for a: lisi
18J/-
Enter value for b: 24
fA*
old   2: values(‘&a‘,&b)
8MqSY"
new   2: values(‘lisi‘,24)
Myt6W
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  d"
1 row created.
;2NtAv
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  UPy:Z;
SQL> /
"[u
Enter value for a: wangwu
{|Q3
Enter value for b: 26
7Max
old   2: values(‘&a‘,&b)
5+
new   2: values(‘wangwu‘,26)
9tn+{
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  1oT;
1 row created.
Yg
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  j3{M
SQL> /
?G#i
Enter value for a: wutian
z&a
Enter value for b: 26g
old   2: values(‘&a‘,&b)
3
new   2: values(‘wutian‘,26)
lqP
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  H
1 row created.
XqM
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  |t
SQL> commit;
*x!#v
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  gfh.
Commit complete.
m>:QD
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Gv*h
SQL>
}rDu#
SQL> col grade null ‘null‘
3"K
SQL> l
71srGP
 1  select b.name, a.grade, b.age
5)F<
 2  from a_t a,b_t b
-!$YRs
 3* where a.name(+)=b.name
\H
SQL> /
q9[
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Ia-
NAME                                  GRADE        AGE
-n&M
-------------------------------- ---------- ----------
BL
lisi                                     60         24
W
wangwu                                   84         26
477E
wutian                           null               26
[a?EA
zhangshan                                80         26
h~
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ?!;
SQL>
-#D
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ?kMGSC
2:
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  45r&‘a
SQL> l
L
 1  select name, avg(grade), age
(sJ7rh
 2  from (select b.name name, a.grade grade, b.age age
NUx3>;
 3  from a_t a,b_t b
SJx
 4  where a.name(+)=b.name)
,5
 5* group by age, name
ZU
SQL> /
E
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Ewhj
NAME                             AVG(GRADE)        AGE
&H
-------------------------------- ---------- ----------
g]<pc&
lisi                                     60         24
3
wangwu                                   84         26
!ZOnC
wutian                                              26
Nn
zhangshan                                80         26f
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  uThcM\
SWUTIAN
這個人沒有成績不把他統(tǒng)計在內(nèi)q)
3:
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  i-:
1
、當我們想要為一個表創(chuàng)建唯一索引時,如果該表有重復(fù)的記錄,則無法創(chuàng)建成功。 (QJS
方法原理: )KQ
1
Oracle中,每一條記錄都有一個rowid,rowid在整個數(shù)據(jù)庫中是唯一的, Gk
  rowid確定了每條記錄是在ORACLE中的哪一個數(shù)據(jù)文件、塊、行上。 yhjK
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  `,
2
、在重復(fù)的記錄中,可能所有列的內(nèi)容都相同,但rowid不會相同,所以只要確定出重復(fù)記錄中 V>)P
  那些具有最大rowid的就可以了,其余全部刪除。 lH
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  k7
3
、以下語句用到了3項技巧:rowid、子查詢、別名。 XNR*
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ba
實現(xiàn)方法: /e
SQL> create table a (
33
2 bm char(4), --
編碼 <}cU@4
3 mc varchar2(20) --
名稱 =jY;Z
4 )
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  g!KM
5 /
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  {:e[
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  e`e
表已建立. 1?,.
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  8=Dl9;
SQL> insert into a values(‘1111‘,‘1111‘);
R23g
SQL> insert into a values(‘1112‘,‘1111‘);
#
SQL> insert into a values(‘1113‘,‘1111‘);
i|
SQL> insert into a values(‘1114‘,‘1111‘);
q>V+L
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  }J
SQL> insert into a select * from a;
+i2|@0
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  *T
插入4個記錄. lIG\^X
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  T
SQL> commit;
EnemB
SQL> select rowid,bm,mc from a;
O7
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  e
ROWID BM MC
:!|j8m
------------------ ---- -------
‘9%EK
000000D5.0000.0002 1111 1111
h9$-)L
000000D5.0001.0002 1112 1111
dd
000000D5.0002.0002 1113 1111
OXC
000000D5.0003.0002 1114 1111
K7K
000000D5.0004.0002 1111 1111
#O
000000D5.0005.0002 1112 1111
Hk
000000D5.0006.0002 1113 1111
<
000000D5.0007.0002 1114 1111
iAs Y
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  u
查詢到8記錄. {9&
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ||
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  x
查出重復(fù)記錄 j-H&D
SQL> select rowid,bm,mc from a where a.rowid!=(select max(rowid) from a b where a.bm=b.bm and a.mc=b.mc);
$8& X^
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  V‘
ROWID BM MC
w@
------------------ ---- --------------------
Z>
000000D5.0000.0002 1111 1111
DAu8a
000000D5.0001.0002 1112 1111
sRxcx
000000D5.0002.0002 1113 1111
;+<J
000000D5.0003.0002 1114 1111
WbQN
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ?| -5
刪除重復(fù)記錄 $@
SQL> delete from a a where a.rowid!=(select max(rowid) from a b where a.bm=b.bm and a.mc=b.mc);
I‘=!c
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  a(S}C
刪除4個記錄. 8
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  #2B
SQL> select rowid,bm,mc from a;
>i/
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Wj~cn
ROWID BM MC
dij
------------------ ---- --------------------
uWg
000000D5.0004.0002 1111 1111
HO/0hp
000000D5.0005.0002 1112 1111
mfc
000000D5.0006.0002 1113 1111
T$S5aA
000000D5.0007.0002 1114 1111
q

 

=====================================================

ProductID  SALE_YEAR   SALES    productID   2001  2002     2003L5WI3
001          2001               10           001        10
"

002          2001               15           002        15
<
003          2002               12           003                12         10
AT
003          2003               10
`h%@{7
寫一個SQL或者PL/SQL完成左邊的表變成右邊的表。=

SQL> CREATE TABLE TEST(PRODUCT_ID NUMBER ,SALE_YEAR VARCHAR2(20),SALES NUMBER) ;Rxcs
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  R
Table created.
HQ/
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  RQ
SQL> INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘);
v
Enter value for 1: 001l7g[
Enter value for 2: 2001
(!Zj
Enter value for 3: 10
AXREC
old   1: INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘)
S\_
new   1: INSERT INTO TEST valueS(‘001‘,‘2001‘,‘10‘)
A{]KYG
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  6,De%
1 row created.
73.
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ]LHQ
SQL> INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘);
d|z&
Enter value for 1: 002
w3
Enter value for 2: 2001
Y
Enter value for 3: 15
i
old   1: INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘)
Fj
new   1: INSERT INTO TEST valueS(‘002‘,‘2001‘,‘15‘)
^ZawQJ
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  :
1 row created.
:
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  k0=O7
SQL> INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘);
N
Enter value for 1: 003
e
Enter value for 2: 2002g-P
Enter value for 3: 12G^RV
old   1: INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘)
jp/I0
new   1: INSERT INTO TEST valueS(‘003‘,‘2002‘,‘12‘)
Y
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  )
1 row created.
[1UqH
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  lKrk
SQL> INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘);
<(n
Enter value for 1: 003
OI
Enter value for 2: 2003
y<
Enter value for 3: 10l )@d
old   1: INSERT INTO TEST valueS(‘&1‘,‘&2‘,‘&3‘)
S`v>1
new   1: INSERT INTO TEST valueS(‘003‘,‘2003‘,‘10‘)
Bjax
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  .dvn
1 row created.
kov/,
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  /j
SQL> COMMIT;
:[Po1
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  Yor{B
Commit complete.
`XH`h0
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  -2#en$
SQL> SELECT * FROM TEST;
-C
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  [
PRODUCT_ID SALE_YEAR                 SALES
yk
---------- -------------------- ----------

        1 2001                                   10
U
        2 2001                                   15
;o
        3 2002                                   12
rN\ou
        3 2003                                   10
eI%/
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  T0[WI"
SQL> SELECT PRODUCT_ID,
:B
 2         DECODE(SALE_YEAR,2001,SUM(SALES)) "2001",
B\
 3         DECODE(SALE_YEAR,2002,SUM(SALES)) "2002",
cp79
 4        DECODE(SALE_YEAR,2003,SUM(SALES)) "2003"
C
 5        FROM TEST
,‘Yd[Z
 6      GROUP BY PRODUCT_ID,SALE_YEA;
<rjT
        GROUP BY PRODUCT_ID,SALE_YEA
d
                            *
Ri
ERROR at line 6:
y
ORA-00904: "SALE_YEA": invalid identifier
r".
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  !0!%
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  ~1
SQL> SELECT PRODUCT_ID,
Ss
 2         SUM(DECODE(SALE_YEAR,2001,SALES)) "2001",
JQ+XNx
 3         SUM(DECODE(SALE_YEAR,2002,SALES)) "2002",
{Sp‘c
 4        SUM(DECODE(SALE_YEAR,2003,SALES)) "2003"
C
 5        FROM TEST
[ 6
 6      GROUP BY PRODUCT_ID;
2:6R1x
©達內(nèi)科技論壇 -- 達內(nèi)科技論壇  `
PRODUCT_ID       2001       2002       2003
1
---------- ---------- ---------- ----------
Tq
        1              10
r)<D
        2              15
8^o
        3                             12         10
NY?


分頁模板:

SELECT B.* FROM78 (SELECT A.*,ROWNUM ROW_NUM FROMj (SELECT * FROM [表名] WHERE [選擇條件]% ORDER BY [排序方式] ) A where rownum <= [頁號*每頁記錄數(shù)] )B©

WHERE ROW_NUM >= [(頁號-1)*每頁記錄數(shù)+1]

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多