数据库条件查询及关系搭建

一、数据库条件查询

条件查询

SELECT * FROM student WHERE age=18

比较运算符

<、>、 =、>= 、<=、<>、 !=
在这里插入图片描述
逻辑运算
And
在这里插入图片描述
Or
在这里插入图片描述
Not
在这里插入图片描述

模糊查询(“x%”)

SELECT * FROM student WHERE name LIKE “小%”

%匹配 0到多个字符
在这里插入图片描述

范围查询(in,not in)

select * from student where age in (17,20);

在这里插入图片描述
查询为空(is)
在这里插入图片描述
查询不为空(is not)
在这里插入图片描述

排序(order by)

SELECT * FROM student ORDER BY age;以年龄排序

在这里插入图片描述

多条件排序,第一个条件为主排序条件
在这里插入图片描述

倒序(order by field desc)
在这里插入图片描述

筛选和排序连用(先筛选再排序)
在这里插入图片描述

子查询
子查询是一种嵌套查询,将一个查询用小括号包围起来,然后作为下一个查询的结果,子查询必须有别名

SELECT nan.name FROM (SELECT name,age FROM student WHERE gender=”男” ) AS nan WHERE age = 18;

在这里插入图片描述

二、数据库关系搭建

数据库关系针对是多表之间的联系。
一对一

两个表的每条数据之间,存在唯一映射关系。

举个栗子:
一个人一张身份证
一张身份证对应一个人

一对多

将两个表分为一个一表,一个多表,(这里的一表,多表只是一个标识名字,没有实质的意义,只为区分两张表)一表当中数据可以对应多表当中的多条数据,
多表当中的一条数据只能对应一表当中的一条数据。

举个栗子:
父亲(一表)
张三
Id

儿子(多表)
张1
张2
p_id

在这里插入图片描述
在这里插入图片描述
这两张表通过parent的id来关联
查询老张的所有儿子
在这里插入图片描述
查询李3的父亲
在这里插入图片描述
多对多

一个表当中数据可以对应另一个表当中的多条数据,反之亦然。

专业
在这里插入图片描述

课程
在这里插入图片描述

关系
在这里插入图片描述

Python所有的课程
在这里插入图片描述

父子id关系
在商品类型当中会涉及到子类型
举个栗子:
服装

  • 男装
    – 中山装
    -------高级中山装

Parent_id

在这里插入图片描述

posted @ 2019-06-15 19:14  Python及时行乐  阅读(634)  评论(0编辑  收藏  举报