数据库常用的操作查询

                                               基本连接:


使用规则:

SELECT子句列表中,目标列前都加上基本名称

FROM子句包括所有使用的基表

WHERE定义一个同等连接

 

例子:

  SQL数据库中有两张表,一张人员(T_Person)表、一张卡(T_Card)表,人基本上都那么几张卡,像银行卡、饭卡、水卡、电费卡……

(T_Person)

(T_Card)

 

 

  

 

                                              内连接:


语法格式:

SELECT select_list

From table inner join tables [on join_conditions]

[where search_conditions]

[order by order_expression]

  内连接是等值连接,它使用“=、>、<、<>”等运算符根据每个表共有的列的值匹配两个表中的行

查询语句:

    select * from T_Person inner join T_Card on T_Person.CardId = T_Card.CardId

查询结果:

 

 

                                                 左外连接:


与内连接的区别:

内连接消除与另一表任何行不匹配的行,外连接返回form子句提到的至少一个表或视图的所有行,

外连接有主从之分,主表去匹配从表,符合条件,返回到查询结果,没有匹配到,主表行任然保留,也返回到查询结果,表中的行空值也到查询表

  左连接又称左向外连接,查询的结果集包括SQL语句中左表的所有行,右表中匹配的行。如果左表的某行在右表中没有匹配行,则用空值表示

 

查询语句:

 

    select * from T_Person left join T_Card on T_Person.CardId = T_Card.CardId

查询结果:

                                                右外连接:


 

 格式: 表名 RIGHT JOIN 表名 ON 条件  返回包括右表中的所有记录和右表中连接字段相等的记录

其实跟左外连接差不多,就是将右边的表给全部显示出来

 查询的结果集包括SQL语句中右表的所有行,左表中匹配的行。如果右表的某行在左表中没有匹配的行,则用空值表示

 

查询语句:

     select * from T_Person right join T_Card on T_Person.CardId = T_Card.CardId

查询结果:

 

 

 

                                               全连接:


可以全查出来

                                               交叉连接:


不带where子句,返回被连接的两个表所有的数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数

 

 

语法格式:

Select select_list

From table cross join table

[where search_conditions]

[order by order_expression]

                                       自连接:


在同一个表实现多表连接

 

                                      联合查询:


语法格式:

​
Select select_list

From table_source

[where search_conditions]

{union[ALL]

Select select_list

Form table_source

[where search_conditions]

[order by order_expresson]

}

​

注意:使用union查询,连接的两个结果集在期目标列表有相同数目表达式,内容保持一致

 

                                                  使用子查询:


数据筛选条件,其中使用select语句,控制取值范围

子查询,将查询一张表得到的结果来充当另一个查询的条件,这样嵌套的查询就称为子查询

 

嵌套子查询:

xml查询:

For xml查询:

                                        exists关键字查询:


EXISTS关键字后面的参数是任意一个子查询,如果子查询有返回记录行,则为TRUE,外层查询语句将会进行查询,如果子查询没有返回任何记录行,则为FALSE,外层查询语句将不会进行查询。

交查询ntersect:

差查询except:

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
回答: Oracle数据库常用操作包括导出和导入数据,创建和修改表,添加索引,使用常用函数和语句,进行管理操作等。对于导出数据,可以使用exp命令,例如exp user/password@orcl file=xxx/xxx.dmp full=y可以导出整个数据库,也可以指定表空间或用户进行导出。而导入数据可以使用imp命令,例如imp user/password@orcl file=xxx/xxx.dmp full=y可以导入整个数据库。如果遇到字符集报错,可以使用export NLS_LANG=AMERICAN_AMERICA.AL32UTF8命令修改字符集。\[1\]\[2\]除了导入导出数据,还可以进行基础操作,如创建表、修改表名、添加唯一索引等。常用函数包括字符串操作、数字操作、逻辑操作和JOB操作常用语句包括树形结构查询、declare语句块和数据分组编号等。管理操作包括查询数据库版本、查询字符集编码、设置系统字符集、使用数据泵导入导出数据查询、创建和删除DBLink、创建用户、锁表追踪和解锁、回滚表数据到指定时间等。\[3\] #### 引用[.reference_title] - *1* *2* *3* [Oracle数据库常用操作笔记(持续更新)](https://blog.csdn.net/Dong_Xu1121/article/details/88033199)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值