哪个分析函数可以解决我这问题khbh
中国
中国
美国
美国
我想得到的查询结果是这样的形式
khbh ..
中国 1
中国 1
美国 2
美国 2
中国
中国
美国
美国
我想得到的查询结果是这样的形式
khbh ..
中国 1
中国 1
美国 2
美国 2
解决方案 »
- 这个语句怎么写?
- 求助:安装10G过程中出现ora-25031
- 命令未正确结束.......
- 此处不允许约束条件说明??
- oracle建了databaselink,发生could not resolve the connect identifer specfied
- oracle 如何批处理清空多个表,保留表结构。
- 一个关于系统触发器的问题?
- 配置oracle客户端问题
- grant sysdba to sys报错如下:
- 一个导入数据表的问题?急!!
- 为什么我的Oracle 10g下的OracleDBConsole服务启动不了,只有在断开网络连接的情形下才能启动?
- Oracle 安装好后,不知道在哪里运行sql语句?????????????
case when then else end
都可以实现的
如果是的话,可以用lag()over()这个可以取当前列上面的列值,比较不同时序号+1,相同不变
不知道我理解的对不对
create table table_a (a varchar2(10));
insert into table_a
values('中国');
insert into table_a
values('中国');
insert into table_a
values('美国');
insert into table_a
values('美国');
select a,case a when '中国' then 1
when '美国' then 2 else 0 end as id from table_a
你只适用于两种数据用row_number() over
这个分析函数可以实现select khbh,row_number() over(order by khbh desc)
from a
dense_rank()结果是1133
insert into table_a
values('中国');
insert into table_a
values('中国');
insert into table_a
values('美国');
insert into table_a
values('美国');
select a, dense_rank() over(order by a) px from table_a