第八节——表操作

Posted 想学习安全的小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第八节——表操作相关的知识,希望对你有一定的参考价值。

表操作学习

一、group by

  1. 概念:GROUP BY 语句不能单独使用,一般用于结合合计函数,根据一个或多个列对结果集进行分组。
  2. 语句
SELECT column_name, aggregate_function(column_name) FROM table_name GROUP BY column_name
//aggregate_function是函数名,修改此值使用不同的函数
  1. 例子:有一个价格表,通过国家名对不同国家的价格进行统计
       - 查看表的数据

       - 对nation进行区分,统计每个国家的价格综合,语句:select nation,sum(price) from testtable group by (nation);

       - 不加group by会提示报错

二、内连接inner join

  1. 概念:将两个表通过数据一致的列,连接展示数据
  2. 语法:
SELECT column_name
FROM table_name1
INNER JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
  1. 例子:将表一与表二的数据通过id列,内连接展示
       - 查看表1的数据

       - 查看表2的数据

   - 将表1和表2的数据通过id值联合展示,语句:select ttable1.id,ttable1.name,ttable2.price from ttable1 inner join ttable2 on ttable1.id=ttable2.id;

   - 对于匹配不到的列,如表二多了一个id为4的一行数据,进行内联查询时,不进行展示

三、外连接——左连接(left join)

  1. 概念:LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行,在本数据库中LEFT JOIN等同于LEFT OUTER JOIN
  2. 语法
SELECT column_name
FROM table_name1
LEFT JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
  1. 举例:表一和表二通过id列进行左连接,表一比表二多一行id=5的数据
       - 查看表1的数据

       - 查看表2的数据

       - 表1与表2通过id列进行左连接

四、外连接——右连接(right join)

  1. 概念:RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行,此数据库中,RIGHT JOIN 等同于 RIGHT OUTER JOIN
  2. 语法

SELECT column_name
FROM table_name1
RIGHT JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
  1. 例子:表1与表2通过id列进行右连接,但是表1比表2少id=4的数据行
       - 查看表1的数据

       - 查看表2的数据

       - 表1与表2通过id列进行右连接,语句:select * from ttable1 right join ttable2 on ttable1.id=ttable2.id;

五、外连接——全连接

  1. 概念:只要其中某个表存在匹配,FULL JOIN 关键字就会返回行,在此数据库中,FULL JOIN 等同于 FULL OUTER JOIN
  2. 语法:
SELECT column_name
FROM table_name1
FULL JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
  1. 举例:表1与表2通过id列进行全连接,表一多id=4的数据行,表二多id=5的数据行
       - 查看表1的数据

       - 查看表2的数据

       - 表1与表2通过id列全连接,语句:select * from ttable1 full join ttable2 on ttable1.id=ttable2.id;

以上是关于第八节——表操作的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode快速入门之第八节课: 掌握链表数据移动的小诀窍

OpenGL第八节:操作像素点去更新纹理

Oracle学习笔记之第八节sql语句(开发课学生指南051)

第八节——指针

实验第八节——系统chaincode相关操作

实验第八节——系统chaincode相关操作