PL/SQL循环查询语句怎么写?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PL/SQL循环查询语句怎么写?相关的知识,希望对你有一定的参考价值。

例如:
select count(distinct(process_id )) as"计数" ,20220801 as "日期"
from jssia_eodap.eodap
where to_char(apply_time, 'yyyymmdd') <= 20220801

输出的结果是 计数 日期
14246 20220801

我想 where to_char(apply_time, 'yyyymmdd') <= 20220801 每次递减一天,然后查出结果。
输出: 计数 日期
14246 20220801
XXXX 20220731
XXXX 20220730
....................................
XXXX 20220101

该怎么写语句?

参考技术A select count(distinct(process_id )) as 计数 ,to_char(apply_time, 'yyyymmdd') as 日期
from jssia_eodap.eodap
where to_char(apply_time, 'yyyymmdd') <= '20220801'
group by 日期
order by 日期 desc

oracle 视图sql语句怎么写

现有表1
列a 列b
1 a
2 b
1 c
2 d
创建视图成
列a 列b 列c
1 a c
2 b d
sql怎么写啊

多谢
图片

方法和详细的操作步骤如下:

1、第一步,通过pl
 / sql登录到oracle数据库,见下图,转到下面的步骤。

2、第二步,完成上述步骤后,输入sql以查询该库的所有视图,elect * from all_views t,并要求所有者在结果中代表不同的用户,见下图,转到下面的步骤。

3、第三步,完成上述步骤后,如果查看用户的所有视图,执行sql,select * from user_views t,可以看到用户尚未创建视图,见下图,转到下面的步骤。

4、第四步,完成上述步骤后,如果要查看库,则执行sql,代码见下图。这样,就解决了这个问题了。

参考技术A

oracle中,创建视图的基本方式是:

create or replace view  视图名称  as  + 查询语句


举例如下:

--1.新建dept表的视图
create or replace force view test_view as
select * from dept;

--2.查看视图
select * from test_view;

参考技术B 在MSSQL 中可以,在oracle里面需要核对语法,希望有参考价值
假设有张学生成绩表(CJ)如下
Name Subject Result
张三 语文 80
张三 数学 90
张三 物理 85
李四 语文 85
李四 数学 92
李四 物理 82

想变成
姓名 语文 数学 物理
张三 80 90 85
李四 85 92 82

declare @sql varchar(4000)
set @sql = 'create view [viewname] as select Name'
select @sql = @sql + ',sum(case Subject when '''+Subject+''' then Result end) ['+Subject+']'
from (select distinct Subject from CJ) as a
select @sql = @sql+' from CJ group by name'
select @sql
exec(@sql)追问

mysql 没学过啊,你能说说大概的意思吗?
create view ss as select name, 后面的就看不懂了

追答

后面select distinct Subject from CJ 就是选出不同课程,而case ...when ....then....end 就是不同课程中选择成绩,其中字段名称 就是'+Subject+

你可以建好cj表 ,然后用print @sql 来追踪理解。

本回答被提问者采纳
参考技术C create view 视图名 as select * from 表名; 参考技术D create view v_tname as
select * from t_name where deptno=101;

以上是关于PL/SQL循环查询语句怎么写?的主要内容,如果未能解决你的问题,请参考以下文章

Oracle中使用PL/SQL怎样用循环插入多条数据?

在pl/sql中怎么查询所有存在的表,以及怎么样获得未知表中的某一字段

PL/SQL的基本语法

pl/sql连接Oracle不管执行啥语句都会重复执行这条语句,永不停止,怎么办呀

怎么解决这个问题?是啥问题 sql语句在PL/SQL里运行没问题啊

在PL/SQL中怎样判断查询的结果是不是为空