当前位置:首页 » 操作系统 » 数据库中on

数据库中on

发布时间: 2024-09-26 22:43:26

1. 数据库中in、on、with的用法及示例。

  1. in

    select * from tab where field in ('A', 'B', 'C')

    等价于select * from tab where field = 'A' or field = 'B' or field = 'C'

  2. on永在表连接的时候

    select * from a inner/left/right join b on a.xx = b.xx

  3. with用法:

    创建一个表:

    create table regr (pid integer,id integer, name char(20))

    alter table regr alter id set not null add primary key(id)

    insert into regr values(-1,1,'library'),(1,2,'news'),(2,3,'world news'),(2,4,'politics'),(2,5,'bussiness')

    (2,6,'science'),(2,7,'technology'),(1,8,'sports'),(8,9,'local'),(8,10,'collegiate'),(8,11,'professional')

    (9,12,'soccer'),(10,13,'soccer'),(11,14,'soccer'),(9,15,'football'),(10,16,'football'),(11,17,'football'

    使用with得到数据树

    WITH RPL (PID, ID, name) AS

    (SELECT ROOT.PID, ROOT.ID, ROOT.NameFROM regr ROOT

    WHERE ROOT.PID = 8

    UNION ALL

    SELECT CHILD.PID, CHILD.ID, CHILD.Name

    FROM RPL PARENT, regr CHILD

    WHERE PARENT.ID = CHILD.PID)

    SELECT DISTINCT PID, ID, Name

    FROM RPL

    ORDER BY PID, ID, Name

  4. RPL 作为一个具有以下三列的虚拟表:PID、ID 和 name。

  5. WITH 子句内的第一个 SELECT 语句是初始化表。它只执行一次。它的结果形成虚拟表的初始内容以作为递归的种子。在上面的示例中,种子是 PID 为 8 的一行或多行。

  6. 第二个 SELECT 语句执行多次。将种子作为输入(JOIN 中的辅助表)传递给第二个 SELECT 语句以产生下一个行集合。将 JOIN 的结果添加(UNION ALL)到虚拟表的当前内容中,并放回到其中以形成用于下一次传递的输入。只要有行产生,这个过程就会继续。

2. 数据库编译中的as和on代表啥

SQL数据库中SELECT AS中的AS代表的是重命名列名或者表名。 其用法是 SELECT 列名1 AS 列1,列名2 AS 列1 FROM 表1 语句表示的意思是从表1中读取列名1和列名2的数据,并且为列名1和列名2分别重命名为列1和列2.

3. 关于ORACLE数据库中授权grant on的问题,新手小白请高手解答一下

A在给B授权的时候用下面这条命令试试
grant select on aa to b with grant option
这条命令,可以让B把select 权限再一次授权给别的用户
如果没有加 with grant option
则不允许B把select权限再次授权

4. 在数据库里 innerjoin... as ..on是什么操作

Inner join 内连接
as 别名
on 之后跟内连接的条件

这句话应该是:
SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2 AS t2 (别名)
ON table_name1.column_name=t2.column_name

热点内容
graham凸包算法 发布:2024-09-27 07:11:59 浏览:93
写小说的怎么上传 发布:2024-09-27 07:10:30 浏览:4
国内的服务器可以搭建v2吗 发布:2024-09-27 07:09:34 浏览:994
指定数据库所在服务器ip怎么找 发布:2024-09-27 06:33:54 浏览:326
linux安装google 发布:2024-09-27 06:33:46 浏览:107
euclid算法 发布:2024-09-27 06:20:22 浏览:642
java银行账户类 发布:2024-09-27 06:20:12 浏览:908
linux内核编译重新 发布:2024-09-27 06:18:45 浏览:461
解压拓展项目 发布:2024-09-27 05:43:16 浏览:192
编译原理上升的箭头 发布:2024-09-27 05:25:24 浏览:224