SQL:增、删、改、查 基本语句 Navicat建库(用法 + 例子)

文章目录

  • 新建数据库
    • 新建表
  • 增、删、改、查
    • select 查找
    • insert 添加
    • delete 删除
    • update 修改
    • where 扩展
      • = < > <= >= != <> 比较运算符
      • and or 逻辑运算符
      • between...and... 介于..和..之间
      • in 包含
      • like 模糊查询
      • is null 为空的
  • 查询扩展
    • order by 排序
    • limit start count / count offset start 限制查询
    • 聚合查询
    • group by 分组查询
      • having 分组后筛选
    • 综合练习
  • 多表
    • where 多表查询
    • join on 内、外连接
    • union 属性相同 合表

新建数据库

在这里插入图片描述

新建表

主键:像人的身份证号一样,唯一代表。

右键表->新建 输入内容

在这里插入图片描述

添加数据

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

增、删、改、查

select 查找

select 属性名 form 表名

select name, sex, age from student

在这里插入图片描述

* 查找所有信息

select * from student

在这里插入图片描述

where 筛选符合条件的

select * from student where sex = '男'

在这里插入图片描述

insert 添加

insert into 表名(要添加的属性) value(添加的属性值)

insert into student(name, sex, age, classid) value("小李李","男", 18, 2) 

在这里插入图片描述

delete 删除

delete form 表名 where 删除符合的条件

delete from student where id = 3

表示为 删除id值为3的人信息。

update 修改

update 表名 set 要改的属性 where 筛选需要改的条件

表示为将 id 为 4 的人的姓名改成哈哈,性别改成女,年龄改为 2。

update student set name="哈哈", sex="女", age=2 where id = 4

在这里插入图片描述

where 扩展

可以发现删、改、查、都需要查找目标用到where

= < > <= >= != <> 比较运算符

和上面 = 用法相似
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

and or 逻辑运算符

select * from student where sex="男" and math > 60 or chinese > 60 and sex="女"

在这里插入图片描述

between…and… 介于…和…之间

相当于 >= <=

在这里插入图片描述

in 包含

方便批量操作

在这里插入图片描述

like 模糊查询

需要配合占位符使用,不加占位符与等号没有区别

_代表一位字符
%代表任意位字符(0位也算)

在这里插入图片描述

is null 为空的

在这里插入图片描述

查询扩展

order by 排序

asc 升序 desc 降序

select * from student order by age asc

在这里插入图片描述

limit start count / count offset start 限制查询

select * from student limit 2, 3

聚合查询

sum() avg() count() max() min() 配合分组使用

group by 分组查询

求男女年龄平均值

select sex, sum(age)/count(age), avg(age) from student group by sex

在这里插入图片描述

having 分组后筛选

求男女数学平均分后,只查看男生的。

select sex, avg(math) from student group by sex having sex = "男"

在这里插入图片描述

综合练习

含义:挑选男生,以个人(id)分组,平均分大于60的,以总分降序,只显示前三人,的名字、性别、总分、平均分。
注意书写顺序

select name, sex, sum(math + english+ chinese) 总分, sum(math + english+ chinese) / 3 平均分 from student where sex = "男" group by id having 平均分 > 60 order by 总分 desc limit 0, 3;

在这里插入图片描述

多表

下面例子以如下表操作。

student:

idnamesexageaddressmathchineseenglishclass
2李四18保定9087771
3王浩10廊坊6677221
4哈哈2北京7876551
5杜甫19上海6772882
6花花46天津4534982
7丽丽7河南5687782
8小明37河北9878672
9小李25邯郸6746563
10小花28石家庄2365453
11小王137845343
12李华209956233
13李玉与16457865

class:

cidclass_num
12301
22302
32303
42304

where 多表查询

如果我们不用 where 而是直接合表,会显示笛卡尔积的结果,显然不是我们需要的。

样例截图未全截,明白意思即可。

select * from class, student 

在这里插入图片描述

我们需要的是班级编号与学生班级编号一一对应的和表结果,可以在where后面加上需要的判断条件来显示。

select * from class, student where class.cid = student.class

在这里插入图片描述

join on 内、外连接

[inner] join 内连接 与 where 用法相似

select * from class join student on class.cid = student.class

在这里插入图片描述

left [outer] join 左外连接

select * from student left join class on class.cid = student.class

可以发现student中班级为空的也展现出来了。

在这里插入图片描述

right [outer] join 右外连接

与左连接相同,左右的区分,就是看书写的顺序而已。
菜鸟教程里的图解,还是很容易理解之间的区别的。

在这里插入图片描述

union 属性相同 合表

将男女筛选出来再合起来。

select * from student where sex="男" 
union 
select * from student where sex="女"

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/148875.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【计算机组成原理】考研真题攻克与重点知识点剖析 - 第 2 篇:数据的表示和运算

前言 本文基础知识部分来自于b站&#xff1a;分享笔记的好人儿的思维导图与王道考研课程&#xff0c;感谢大佬的开源精神&#xff0c;习题来自老师划的重点以及考研真题。此前我尝试了完全使用Python或是结合大语言模型对考研真题进行数据清洗与可视化分析&#xff0c;本人技术…

mysql日期月份相关函数

从给定日期提取最后一天&#xff1a; 要知道2017年12月的最后日期&#xff0c;可以按以下方式执行LAST_DAY()函数&#xff1a;用法:输出&#xff1a; 2017-12-31 从给定的日期时间中提取最后一天&#xff1a; 要使用日期时间格式了解月份的最后日期&#xff0c;可以按以下方式…

【Jmeter】性能测试脚本开发——性能测试环境准备、Jmeter脚本编写和执行

文章目录 一、常用的Jmeter元件二、性能测试环境准备三、编写Jmeter脚本四、执行测试脚本 一、常用的Jmeter元件 取样器-HTTP请求 作用&#xff1a;发送HTTP请求配置原件-HTTP请求默认值 作用&#xff1a;设置HTTP请求的默认参数配置原件-用户定义的变量 作用&#xff1a;定义…

分类预测 | Matlab实现BES-ELM秃鹰搜索算法优化极限学习机分类预测

分类预测 | Matlab实现BES-ELM秃鹰搜索算法优化极限学习机分类预测 目录 分类预测 | Matlab实现BES-ELM秃鹰搜索算法优化极限学习机分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 Matlab实现BES-ELM秃鹰搜索算法优化极限学习机分类预测&#xff08;完整源码和数…

探秘前后端开发世界:猫头虎带你穿梭编程的繁忙街区,解锁全栈之路

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

算法题:盛最多水的容器

这个题目乍一看就是双指针&#xff0c;没想到官方解答也是双指针&#xff0c;我在官方的基础上优化了一下下&#xff0c;左右两边各一个指针&#xff0c;每次移动短的那一头的时候&#xff0c;不是移动一格&#xff0c;而是找到比短的那一头要长一点的&#xff0c;再进行比较。…

Linux免交互

免交互概念 不需要进入文件内部&#xff0c;可以在文件外对文件内容进行操作 sed 最强大的功能&#xff1a;改 新增 awk 最强大的功能&#xff1a;按行取列 如何对文本内容进行免交互 here document 免交互 对文本内容进行操作&#xff1a;标准输入的替代品 语法格式&…

火山引擎 ByteHouse:TB 级数据下,如何实现高效、稳定的数据导入

更多技术交流、求职机会&#xff0c;欢迎关注字节跳动数据平台微信公众号&#xff0c;回复【1】进入官方交流群 近期&#xff0c;火山引擎开发者社区、火山引擎数智平台&#xff08;VeDI&#xff09;联合举办以《数智化转型背景下的火山引擎大数据技术揭秘》为主题的线下 Meeup…

【算法学习】-【双指针】-【盛水最多的容器】

LeetCode原题链接&#xff1a;盛水最多的容器 下面是题目描述&#xff1a; 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。…

【软件测试】自动化测试selenium(二)

文章目录 三. 掌握Selenium常用的API使用1. webdriver API2. 操作测试对象3. 添加等待4. 打印信息5. 浏览器的操作6. 键盘事件7. 鼠标事件8. 定位一组元素9. 多层框架/窗口定位10. 下拉框处理11. 弹窗处理12. 上传文件13. 关闭浏览器14. 切换窗口15. 截图操作 三. 掌握Selenium…

做私域,转化成交的秘诀!

数字化时代&#xff0c;企业开始重新定义和客户的关系&#xff0c;不仅是交易关系&#xff0c;更重要的是建立长久的、有价值的关系。 01. 私域的本质是客户经营 我们为什么要做私域&#xff1f;其实就是为了扩量提效&#xff0c;提复购加利润&#xff0c;把客户变成真正的自…

【LeetCode热题100】--199.二叉树的右视图

199.二叉树的右视图 思路&#xff1a; 使用根->右->左方法进行遍历节点&#xff0c;同时记录层数&#xff0c;将当前层数与记录的层数进行比较&#xff0c;如果当前层数大于记录的层数&#xff0c;添加该元素&#xff0c;若当前层数小于记录的层数&#xff0c;说明该层已…

博途1200/1500 ALT指令

SMART PLC的ALT指令实现代码,请查看下面文章博客 SMART PLC如何构造ALT指令_smart200类似alt指令-CSDN博客单按钮启停这些老生常谈的问题,很多人感兴趣。这篇博文讨论下不同的实现方法,希望对大家有所帮助。指令虽然简单,但是在编程的时候合理使用对我们高效率编程帮助还是…

蓝桥杯每日一题2023.10.5

3420. 括号序列 - AcWing题库 题目描述 题目分析 对于这一我们需要有前缀知识完全背包 完全背包的朴素写法&#xff1a; #include<bits/stdc.h> using namespace std; const int N 1010; int n, m, v[N], w[N], f[N][N]; int main() {cin >> n >> m;fo…

10链表-单链表构造LinkedList

目录 LeetCode之路——707. 设计链表 分析&#xff1a; Code&#xff1a; LeetCode之路——707. 设计链表 你可以选择使用单链表或者双链表&#xff0c;设计并实现自己的链表。 单链表中的节点应该具备两个属性&#xff1a;val 和 next 。val 是当前节点的值&#xff0c;n…

solidity 合约转java

Generate a Java Wrapper from your Smart Contract Solidity Gradle Plugin - Web3j web3j / web3j-maven-plugin GitLab

mysql面试题16:说说分库与分表的设计?常用的分库分表中间件有哪些?分库分表可能遇到的问题有哪些?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:说说分库与分表的设计? 在MySQL中,分库与分表是常用的数据库水平扩展技术,可以提高数据库的吞吐量和扩展性。下面将具体讲解MySQL中分库与分表…

C++ - 布隆过滤器

前言 之前介绍了 位图&#xff0c;位图在判断某一个 数是否存在&#xff0c;或者在计算某个数是否出现 一次 或者 两次这些问题之上有着非常高效的实现复杂度&#xff0c;它的时间复杂度 可以达到 O&#xff08;1&#xff09;&#xff0c;因为都是逻辑判断和 &#xff0c;常数…

【重拾C语言】五、模块化程序设计——函数(定义、调用、参数传递、结果返回、函数原型;典例:打印字符图形、验证哥德巴赫猜想)

目录 前言 五、模块化程序设计——函数 5.1 计算三角形的重心 5.2 函数 5.2.1 函数定义 5.2.2 函数调用 a. 函数调用的形式和过程 b. 参数传递 值传递 指针传递 c. 函数结果返回 5.2.3 函数原型&#xff08;先调用后定义&#xff09; 5.3 程序设计实例 5.3.1 打印…

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint

前言 我的项目版本如下&#xff1a; React&#xff1a; V18.2.0Node.js: V16.14.0TypeScript&#xff1a;最新版工具&#xff1a; VsCode 本文将采用图文详解的方式&#xff0c;手把手带你快速完成在React项目中配置husky、prettier、commitLint&#xff0c;实现编码规范的统…