当前位置: 首页 > news >正文

垂直类门户网站北京高端网站建设

垂直类门户网站,北京高端网站建设,开发区教育网,辽宁建设工程信息网官网新网址笛卡尔积(或交叉连接): 笛卡尔乘积是一个数学运算。假设我有两个集合 X 和 Y,那么 X 和 Y 的笛卡尔积就是 X 和 Y 的所有可能组合,也就是第一个对象来自于 X,第二个对象来自于 Y 的所有可能。组合的个数即为两个集合中…

笛卡尔积(或交叉连接):
笛卡尔乘积是一个数学运算。假设我有两个集合 X 和 Y,那么 X 和 Y 的笛卡尔积就是 X 和 Y 的所有可能组合,也就是第一个对象来自于 X,第二个对象来自于 Y 的所有可能。组合的个数即为两个集合中元素个数的乘积数。
使用 CROSS JOIN表示交叉连接。它的作用就是可以把任意表进行连接,即使这两张表不相关。

1.多表联查

多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。

前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,也可能没有建立外键。

SELECT	table1.column, table2.column
FROM	table1, table2
WHERE	table1.column1 = table2.column2;  #连接条件

1.等值连接和非等值连接

SELECT employees.employee_id, employees.last_name, employees.department_id, departments.department_id,departments.location_id
FROM   employees, departments
WHERE  employees.department_id = departments.department_id;

表的别名:使用别名可以简化查询。列名前使用表名前缀可以提高查询效率。
使用别名后:

SELECT e.employee_id, e.last_name, e.department_id,d.department_id, d.location_id
FROM   employees e , departments d
WHERE  e.department_id = d.department_id;

等值:是where条件那一行在两表中的值是相等的。
非等值:是where条件那一行的值不与另一表中的行相等,而是其他关系。

非等值例子:EMPLOYEES表中员工工资应在JOB_GRADES表的最高工资和最低工资之间。

SELECT e.last_name, e.salary, j.grade_level
FROM   employees e, job_grades j
WHERE  e.salary BETWEEN j.lowest_sal AND j.highest_sal;

2.自连接

当table1和table2本质上是同一张表,只是用取别名的方式虚拟成两张表以代表不同的意义。然后两个表再进行内连接,外连接等查询。

SELECT CONCAT(worker.last_name ,' works for ' , manager.last_name)
FROM   employees worker, employees manager
WHERE  worker.manager_id = manager.employee_id ;

3.内连接&外连接

  • 内连接: 合并具有同一列的两个以上的表的行, 结果集中不包含一个表与另一个表不匹配的行

  • 外连接: 两个表在连接过程中除了返回满足连接条件的行以外还返回左(或右)表中不满足条件的行 ,这种连接称为左(或右) 外连接。没有匹配的行时, 结果表中相应的列为空(NULL)。

    • 如果是左外连接,则连接条件中左边的表也称为主表,右边的表称为从表。

    • 如果是右外连接,则连接条件中右边的表也称为主表,左边的表称为从表。

9种Join方式

在这里插入图片描述

(1)inner

SELECT  o.order_id, o.customer_id, o.order_date, o.amount, c.customer_name
FROM orders o
INNER JOIN customers c
ON o.customer_id = c.customer_id;

不包含不匹配的,指的是,不是列属性。
在这里插入图片描述

(2)LEFT JOIN

左外连接,则连接条件中左边的表也称为主表,右边的表称为从表。

SELECT  o.order_id, o.customer_id, c.customer_id, o.order_date, o.amount, c.customer_name
FROM orders o
LEFT JOIN customers c
ON o.customer_id = c.customer_id;

在这里插入图片描述

(4)RIGHT JION

右外连接,则连接条件中右边的表也称为主表,左边的表称为从表。

(5)LEFT JOIN WHERE IS NULL

左为主表,把两个表相同的部分行扣去

SELECT  o.order_id, o.customer_id, c.customer_id, o.order_date, o.amount, c.customer_name
FROM orders o
LEFT JOIN customers c
ON o.customer_id = c.customer_id;
WHERE c.customer_id IS NULL

(6)RIGHT JOIN WHERE IS NULL

右为主表,把两个表相同的部分行扣去

UNION

合并查询结果
利用UNION关键字,将多条SELECT语句的结果组合成单个结果集。合并时,两个表对应的列数和数据类型必须相同,并且相互对应。各个SELECT语句之间使用UNION或UNION ALL关键字分隔。

  • UNION 操作符返回两个查询的结果集的并集,去除重复记录。
  • UNION ALL操作符返回两个查询的结果集的并集。对于两个结果集的重复部分,不去重。

这个博客介绍得很详细,例子也很清楚 MYSQL多表查询

2.单表查询

select 字段列表
from 表名列表 
where 条件列表
group by分组字段
having分组后条件
order by排序字段
limit分页限定

条件查询

在这里插入图片描述


查询年龄等于18岁 或者 年龄等于20岁 或者 年龄等于22岁的学员信息select * from stu where age = 18 or age = 20 or age = 22;
select * from stu where age in (18,20 ,22);null值的比较不能使用 = 或者 != 。需要使用 is 或者 is notselect * from stu where english is null;
select * from stu where english is not null;

模糊查询

模糊查询使用like关键字,可以使用通配符进行占位:

(1)_ : 代表单个任意字符

(2)% : 代表任意个数字符


select * from stu where name like '_花%';

排序查询

select 字段列表 from 表名 order by 排序字段名1 [排序方式1],排序字段名2 [排序方式2] …;
ASC : 升序排列 (默认值)
DESC : 降序排列
注:如果有多个排序条件,当前边的条件值一样时,才会根据第二条件进行排序

查询学生信息,按照年龄升序排列
select * from stu order by age ;查询学生信息,按照数学成绩降序排列select * from stu order by math desc ;查询学生信息,按照数学成绩降序排列,如果数学成绩一样,再按照英语成绩升序排列select * from stu order by math desc , english asc ;

聚合查询

函数名 功能
count(列名) 统计数量(一般选用不为null的列)
max(列名) 最大值
min(列名) 最小值
sum(列名) 求和
avg(列名) 平均值

select 聚合函数名(列名) from;
注意:null 值不参与所有聚合函数运算统计班级一共有多少个学生
select count(*) from stu;查询数学成绩的最高分
select max(math) from stu;查询数学成绩的最低分
select min(math) from stu;查询数学成绩的总分
select sum(math) from stu;查询数学成绩的平均分
select avg(math) from stu;查询英语成绩的最低分
select min(english) from stu;

分页查询

select 字段列表 from 表名 limit  起始索引 , 查询条目数;

起始索引计算公式:
起始索引 = (当前页码 - 1) * 每页显示的条数

0开始查询,查询3条数据
select * from stu limit 0 , 3;每页显示3条数据,查询第1页数据
select * from stu limit 0 , 3;每页显示3条数据,查询第2页数据
select * from stu limit 3 , 3;每页显示3条数据,查询第3页数据
select * from stu limit 6 , 3;
http://www.yayakq.cn/news/66057/

相关文章:

  • 做版面的网站山西省住房和城乡建设厅网站
  • 网站建设和编程的区别网站百度推广怎么做的
  • 河北建设厅注册中心网站厦门网站制作网站建设收费
  • 网站联盟怎么做wordpress联系人表单
  • 深圳网站建设公司市场网站建设情况怎么写
  • 有些电影网站是怎么做的如何做体育彩票网站
  • 网站实名认证网站怎么做响应
  • 网站的meta标签优化it培训机构
  • 个人主题网站木质家居 技术支持 东莞网站建设
  • 福建人力资源建设网站goood 谷德设计网官网
  • ps做图下载网站建程网工程平台
  • 网站建设和推广话术6哪些网站做的好处和坏处
  • 网站开发工程师 北大青鸟网页设计素材包
  • 网站规划与开发专业北京建筑总公司
  • 四川省网站建设wordpress小工具宽度
  • 网站建设中的多语言翻译如何实现百度移动应用
  • 杭州专业做网站的公司有哪些外贸网站建设推广公司前景如何
  • 怎么做自己公司的网页长春百度seo排名
  • 新网站优化怎么做余江网站建设
  • 网站建站服务的公司培训机构设计
  • 自己做网站需要固定ip吗移动互联网应用程序备案
  • 泸州市建设局网站seo培训赚钱
  • 个人网站怎么制作成图片中国建设银行汕头支行网站
  • 做外贸网站特色wordpress浏览最多的文章
  • 怎么利用婚庆网站做营销请描述网站开发的一般流程
  • 无锡宏腾网站建设少儿编程线下培训机构排名前十
  • 手机网站建设的第一个问题什么网站收录排名最高
  • 网上做广告的网站海外网络推广
  • 网站权重等级xml网站地图格式
  • 网站制作做站长挣钱ppt模板怎么套用