sql学习(三)

sql学习(三)

标签 : sql


多表查询

采用JOIN关键字建立连接 : SELECT column FROM join_table JOIN_TYPE join_table ON (join_condition)
  • JOIN TYPE
    • 自然连接:NATRUAL JOIN
    • 内连接:INNER JOIN
    • 外连接
      • 左外连接:LEFT (OUTER) JOIN
      • 右外连接:RIGHT (OUTER) JOIN
      • 全外连接:FULL (OUTER) JOIN
    • 交叉连接:CROSS JOIN
连接
  • 自连接:指表与自身连接,自连接可以使用子查询方式实现
  • 自然连接:将表中具有相同名称的列自动进行匹配(SQL Server不支持)
  • 内连接(等同连接):返回结果集是两个表中所有相匹配的数据,舍弃不匹配的数据
    • 等值连接 : =
    • 不等连接 : 多表连接
  • 外连接:
    • 左外连接 = 内连接 + 左边表中失配的元组(在SQL Server 中用 *= 实现左连接)
    • 右外连接 = 内连接 + 右边表中失配的元组 (在SQL Server中用 =* 实现右连接)
    • 全外连接 = 内连接 + 左边表中失配的元组 + 右边表中失配的元组
  • 交叉连接:返回被连接的两个表中所有数据行的笛卡尔积
UNION与UNION JOIN
  • UNION运算符用于集合合并运算
  • UNION JOIN只是把来自一个原表的行与另一个原表中的行联合起来(SQL Server 不支持)

SQL 子查询

  • IN子查询:SELECT column_name FROM table_name WHERE test_expression [NOT] IN (subquery)
  • EXISTS子查询:SELECT column_name FROM table_name WHERE [NOT] EXISTS (subquery)
  • SOME/ALL子查询:SELECT column_name FROM table_name WHERE test_expression θ SOME/ALL (subquery)
  • UNIQUE子查询(用于测试子查询结果中是否含有重复记录):SELECT column_name FROM table_name WHERE [NOT] UNIQE (subquery)
  • 使用子查询创建视图

数据插入

INSERT INTO table_name VALUES(val1 ,val2,...)

数据更新及删除

  • UPDATE table_name SET col1 = val1 ,...
  • DELETE FROM table_name WHERE search_condition
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值