1、可以啊
select '111' 进额 from dual;2、参考
[Q]如何实现行列转换
[A]1、固定列数的行列转换
如
student subject grade
---------------------------
student1 语文 80
student1 数学 70
student1 英语 60
student2 语文 90
student2 数学 80
student2 英语 100
……
转换为
语文 数学 英语
student1 80 70 60
student2 90 80 100
……
语句如下:
select student,sum(decode(subject,'语文', grade,null)) "语文",
sum(decode(subject,'数学', grade,null)) "数学",
sum(decode(subject,'英语', grade,null)) "英语"
from table
group by student
select '111' 进额 from dual;2、参考
[Q]如何实现行列转换
[A]1、固定列数的行列转换
如
student subject grade
---------------------------
student1 语文 80
student1 数学 70
student1 英语 60
student2 语文 90
student2 数学 80
student2 英语 100
……
转换为
语文 数学 英语
student1 80 70 60
student2 90 80 100
……
语句如下:
select student,sum(decode(subject,'语文', grade,null)) "语文",
sum(decode(subject,'数学', grade,null)) "数学",
sum(decode(subject,'英语', grade,null)) "英语"
from table
group by student
动态SQL这样执行
execute immediate('SELECT * FROM DUAL')
SQL Server的 select '111' 进额
在oracle中相等同的语句的语法就是:select '111' 进额 from dual;
有个办法,构造一个集合做表,like:
table_A:
col_1,col_2,col_3....
-----------
select col_1 as ssss from table_A where ssss = ''...............
-----------可能会说你的ssss没标识,找不到这个字段
这样写就可以通过了(sql效率可能会有差别)
select * from (select col_1 as ssss ,table_A.* from table_aA)
where ssss=''.............
如:
select '111' as "金额" from dual;
SQL> select 1 as 阿 from dual;
阿
----------
1
SQL> select '1' as 阿 from dual;-
1
SQL> select '1' "阿" from dual;-
1
阿
---
111
SQL> select '111' 阿 from dual;
阿
---
111
第三个问题楼主想得到什么?你写这段代码的目的是什么?