今天告诉大家一些关于Navicat的一些基础mysql语法,这个也是我的老师教的,整合到了一起,希望对大家有所帮助。

-- 增,删,改 insert  delete  update

-- 增  必须向所有列填充数据,除了(自增列,有默认值列,允许为空)可以不填充
INSERT [INTO] 表(列列表) values (值列表)

-- 删 
 DELETE from 表[where 条件]
DELETE from student

-- 改
UPDATE 表 set 列 = 值,列 = 值 [where 条件]
update student set name = '张亮',set  sex = '女' where studentno = '4'

-- 查询 模糊查询  分页  
like between in is null

-- 查询  排序  分组  连接
-- 排序 order by 默认是升序:asc  降序:desc
-- 按多个列来排序,先按第一个字段排序,在此基础上再按第二个字段进行排序.
select * from student order by age,studentno
-- 分组 聚合函数 sum avg max min count
select sum(age),avg(age),max(age),min(age) from student;
-- count 是统计有多少数据行,如果是统计某个列,则会忽略列中的NULL值。
select count(email) from student
-- 统计有多少学生没有录入邮箱信息??
select count(*) from student where email is null

-- 分组,group by  是把数据进行分类再汇总,必须要配合聚合函数使用,
-- 关键点:按什么进行分组,用什么聚合函数进行统计。
-- 如果某个列出现在from关键字前,且没有包含在聚合函数中,则此列必须出现在group by 子句中
-- 统计每个年级有多少学生? 
select gradeId,count(*) from student group by gradeId
-- 统计每个年级男女学生各有多少?  按年级和性别进行分组,用count函数
select gradeid,sex,count(*) from student group by sex,gradeId; 
-- 统计每个年级有多少课时?
select gradeid,sum(classHours) from subject group by gradeid
-- 统计每个年级有多少课程?
select gradeid,count(*) from subject group by gradeid
-- 统计每个学生的总成绩和平均成绩?
select studentno,sum(result),avg(result) from score group by studentno

-- 连接查询 内连接 外连接 交叉连接
-- 当数据来自两个或两个以上的表时,则才用连接查询来实现。
-- where 条件是两个表的主键列相等。
select * from student s,grade g where s.gradeid=g.gradeid
-- 建议使用下面的写法,性能好一些。
select * from student s inner join grade g on s.gradeid=g.gradeid
-- 查询姓名,学号、课程名、分数  数据来自于3个表?
select name,s.studentno,subjectname,result from student s 
  inner join score c on s.studentno = c.studentno
  inner join subject j on c.subjectno= j.subjectno

-- 外连接  左外连接  右外连接
/* 左外连接,在前面的表是主表,后面的表是子表,主表的数据全部显示,
  再用子表的数据进行填充,如果子表中没有对应的数据,则用NULL来填充 */
select * from student s
  left join score c on s.studentno = c.studentno

-- 查询有哪些学生没有参加过考试,用左外连接实现??
select * from student s
  left join score c on s.studentno = c.studentno 
  where c.studentno is null
-- 查询哪些学生没有参加考试,用子查询实现??
-- 子查询的结果只能是返回一列值,返回的值如果有多个,就只能用in 不能用 = 
select * from student where studentno 
 not in( select studentno from score)

Navicat基础mysql语法相关推荐

  1. [MySQL基础]MySQL语法规范介绍

    MySQL的语法规范: 1.不区分大小写,但建议关键字大写,表名,列名小写. 2.每条命令最好用分号结尾. 3.每条命令根据需要,可以进行缩进,或换行. 4.注释 单行注释:#注释文字 单行注释:-- ...

  2. mysql怎样查表的模式_mysql常用基础操作语法(四)--对数据的简单无条件查询及库和表查询【命令行模式】...

    1.mysql简单的查询:select 字段1,字段2... from tablename; 如果字段那里写一个*,代表查询所有的字段,等同于指定出所有的字段名,因此如果要查询所有字段的数据,一般都是 ...

  3. 【数据库基础】01_数据库概述与MySQL语法基础

    1. 数据库应用 1.1 概述 1.1.1 什么是数据库 简而言之,就是存储数据,管理数据的仓库. 数据库的好处 持久化数据到本地. 可以实现结构化查询,方便管理. DB:数据库(database): ...

  4. mysql查询练习tblstudent_通过Navicat进行MySQL的基础查询练习

    对于数据分析的学习过程,综合自己在网上搜寻整理的资料以及各位前辈.老师的分享,总结出最关键的四个知识技能树: 1.SQL 2.统计学知识 3.Excel 4.Python/R 语言等编程分析工具 不一 ...

  5. [数据库] Navicat for MySQL换种思维解决插入同时更新数据

    这篇文章是我的学生在实际项目中遇到的一个案例,在对某张表插入数据过程中,某些特定的字段需也要进行更新,比如说部门编号在前端插入,而部门名称在插入时应该自动更新,如果前端设置选择编号又选择部门就重复功能 ...

  6. 【入门向】Navicat for MySQL的入门简单使用

    本文仅介绍Navicat for MySQL的一些基本操作,网上的许多教程其实更适用于对数据库有一些基础的人学习,对于完全刚入门的小白其实有些东西不是说的很清楚.为了便于刚入门的初学者更加了解相关基本 ...

  7. [数据库] Navicat for MySQL触发器更新和插入操作

    一.触发器概念 触发器(trigger):监视某种情况,并触发某种操作,它是提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动 ...

  8. navicat for mysql 13_Navicat for MySQL下载

    Navicat for MySQL 是一套管理和开发 MySQL 或 MariaDB 的理想解决方案.它使你以单一程序同时连接到 MySQL 和 MariaDB.这个功能齐备的前端软件为数据库管理.开 ...

  9. Mysql语法大全(命令行)(简洁、明了、全面)

    Mysql命令行的语法 另外一个Mysql语法大全的版本:点这里 两个Mysql语法大全以及命令行代码!!!基本上学习Mysql没有问题 嘿嘿!学习是一个长期的过程!!!还会继续更新!!! 基本的My ...

  10. 基础SQL语法及使用(入门级)

    基础SQL语法 基础 1.建表(CREATE\TABLE...) 2.删除表(DORP\TABLE) 3.修改表插入列(ALTER\TABLE\ADD\DROP\COLUMN\CHANGE) 4.插入 ...

最新文章

  1. 由多线程内存溢出产生的实战分析
  2. ASP.NET MVC 2
  3. 使用sentinel实现限流
  4. 十天精通CSS3(4)
  5. mvn 使用中的错误
  6. 无代码时代来临,程序员如何保住饭碗?赶紧看一看!
  7. flyway常用配置_Spring Boot 2.x基础教程:使用Flyway管理数据库版本
  8. python messagebox弹窗退出_python 中messagebox使用 做中断调试不错
  9. vc++ 类 定时器api_关于JS中一些重要的api实现, 巩固你的原生JS功底
  10. [.NET] : 使用自定义对象当作报表数据源
  11. inline-block导致的错位问题详解
  12. oracle数据库创建检查点,Oracle数据库通过检查点和RBA信息确定恢复范围
  13. java缩小pdf,如何使用Java缩小PDF文档中的内容?
  14. GoldenGate Director安装
  15. Java中的native方法的使用
  16. npp 插件html,Notepad++中常用的插件
  17. 大咖讲|中国AGV技术发展历程及关键点
  18. 【Pyecharts | Scatter】气泡图实现 / 1990 与 2015 年各国家人均寿命与GDP
  19. android9 三星 港版,三星S9官方港版安卓9固件系统升级更新包:TGY-G9600ZHU5CSFB
  20. 黑苹果开启硬件加速(Clover)

热门文章

  1. DataFormatString 的使用
  2. 2019年上半年系统分析师上午真题及答案解析
  3. Pikachu靶机系列之目录遍历、任意文件下载、敏感信息泄露、越权
  4. NOD32企业内部更新服务器搭建
  5. 20189216 2018-2019-2 《密码与安全新技术专题》课程总结报告
  6. AI 视频分析识别系统技术分析
  7. Python网页抓取教程
  8. 百度金融与农业银行战略合作,AI +金融的开放故事讲得好吗?
  9. 谷歌插件如何下载到本地
  10. Tomcat之—— linux/centos 解决Tomcat内存溢出