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

Navicat中一些查找操作 笔记07

一、单表查询

1.查找所有(*)
slect * from st01   【注:以下操作代码中的st01是表格名字】 
2.where子语句中的一些运算符
-- =等于
-- >大于
-- >=大于等于
-- <小于
-- <=小于等于
-- !=不等于
select * from st01 where age=21
select * from st01 where age>18
select * from st01 where age>=20
3.逻辑运算符
-- and与
-- or 或
-- not非(主要用在in和is中使用)
select * from st01 where age>10 and age<21
select * from st01 where age<15 or age>20
4.范围查询
-- between...and... 介于范围之内
-- in 包含
-- not in 不包含
select * from st01 where id in(2,6,7)
-- is null 判空
-- is not null判断非空
5.模糊查询
-- like为模糊查询,需要配合占位符一起使用  _代表一位字符 %代表任意位字符
select * from st01 where name like "%t%" 
6.分页查询(限制查询)
-- limit a,b  a表示开始的索引值,b表示查询的个数
select * from st01 limit 4,10

-- 一页3个 pagesize
-- 第一页 page

select * from st01 limit 0,3
-- 第二页
select * from st01 limit 3,3
-- ......
select * from st01 limit (page-1)*pagesize,pagesize

【limit 子语句放到最后位置】
select * from st01 where sex="女" limit 0,2

-- 排序(where子语句之后,limit子语句之前)
-- order by 列名 desc降序 |asc升序
select * from st01 order by age desc
7.分组函数和聚合函数
-- sum() 取最小值
-- max() 取最大值
-- min() 取最小值
-- avg() 取平均值
-- count() 取得的记录数量
-- count(*)表示取得当前查询表的所有记录,count(字段名称)不会统计null
select count(age) from st01 
-- group by字段名称 分完组后查找用having
select min(age),class from st01 group by class having class=3

二、多表查询(一对一,一对多,多对多)

1. 一对一(e.g丈夫、妻子表)

①合并成一张表√(在一对一的连接处理中,最优)

②在其中一张表中加入外键,通过外键连接

③单独创建一张表,存关系×(不推荐,耗费更多空间和精力)

2. 一对多(e.g班级和学生,部门和员工)

①合并成一张表×(非常不适用,修改操作冗余)

②在多方加入外键√(在一对多的处理过程中最优)

③在单方加入外键×(操作冗余)

④单独创建一个表格存储关系(虽然无冗余,但是额外创建了资源,相比于②的处理方式,稍逊一筹)

3. 对对多×(e.g学生和课表)

①合成一张表×(信息冗余)

②加外键×(无论在哪一方加外键,都会造成冗余现象)

③创建新表存储关系√(在多对多关系中最优)


 


http://www.mrgr.cn/news/31714.html

相关文章:

  • 数据结构之算法复杂度
  • Springboot3 + MyBatis-Plus + MySql + Uniapp 实现商品规格选择sku(附带自设计数据库,最新保姆级教程)
  • MFC -文件类控件
  • 【24华为杯数模研赛赛题思路已出】国赛F题第二套思路丨附参考代码丨免费分享
  • 【华为杯】2024华为杯数模研赛D题 解题思路
  • Linux软件包管理器、Linux开发工具、vim的配置等的介绍
  • 【算法】leetcode热题--148.排序链表
  • 51单片机-红外遥控器(NEC标准)-实验(红外遥控及调速电机)
  • vmware workstation player 17.5.1 安装教程和资源
  • Linux笔记
  • Java的IO流(一)
  • 常见排序(C语言版)
  • Windows系统使用PHPStudy搭建Cloudreve私有云盘公网环境远程访问
  • 【后端】【nginx】nginx常用命令
  • 影刀RPA实战:网页爬虫之药品数据
  • 2024 “华为杯” 中国研究生数学建模竞赛(E题)深度剖析|高速公路应急车道启用建模|数学建模完整代码+建模过程全解全析
  • 高校心理辅导系统:Spring Boot技术实现指南
  • linux----进程地址空间
  • 2024华为杯C题详细完整思路和视频讲解
  • 数据飞轮崛起:数据中台真的过时了吗?