包子的 oracle 学习笔记---SQL学习

来源:互联网 发布:手机yy变声软件 编辑:程序博客网 时间:2024/04/29 10:21

ORACLE学习

目录

  • ORACLE学习
    • 目录
    • SQL学习
      • wmsys wm_concat
      • WITH 名字 AS

SQL学习


wmsys wm_concat

将一列数据转换为一条数据.

SELECT name,WMSYS.WM_CONCAT(num) FROM TABLE WHERE A = '' GROUP BY A

使用前

name num 张三 1234 张三 5678 张三 12345678 李四 1234

使用后效果

name num 张三 1234,5678,12345678 李四 1234

如果使用后中文出现乱码问题.可以使用 TO_CAHR()套在中文字段上.


WITH 名字 AS

很好用有时会用到.这个方法会将查询出来的数据放到内存中使用.
语法如下

WITH A AS (SELECT * FROM 表),B AS (SELECT * FROM 表),C AS ....可以有很多D AS (SELECT * FROM 表)SELECT * FROM A LIFT JOIN B ON A.1 = B.1;--最终查询结果为最后一句查询语句所显示的

例举.

表A

name num 张三 10 小明 200

表B

name num 张三 5 小明 10

SQL语句

WITH A AS (SELECT A.NAME, A.NUM FROM A),B AS (SELECT B.NAME, B.NUM FROM B)SELECT A.NUM / B.NUM AS '倍数', A.NAME as '名字' FROM A LEFT JOIN B ON A.NAME = B.NAME

最后效果

名字 倍数 张三 2 小明 20

需要学习的东西真的还有很多很多啊.T.T

1 0