专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

mysql查询语句大全及用法

来源:小易整编  作者:小易  发布时间:2022-12-28 02:56
摘要:mysql查询语句大全及用法。本次分享的内容是:MySQL常用语句汇总。如果本文对你有帮助,麻烦点一点在看+点赞+分享,你的支持就是作者更新最大的动力~一、背景日常测试开发工作中会用到各类SQL语句,很多时候都是想用的时候才发现语句细节记不...

mysql查询语句大全及用法。本次分享的内容是:MySQL常用语句汇总。

如果本文对你有帮助,麻烦点一点在看+点赞+分享,你的支持就是作者更新最大的动力~

一、背景

日常测试开发工作中会用到各类SQL语句,很多时候都是想用的时候才发现语句细节记不清楚了。临时网上搜索SQL语法,挺费时费力的,语法还不一定是对的。因此汇总整理了一下MySQL最常用的各类语句,以后就不用再到处去搜了。

二、各类SQL语句

假设表结构如下:

mysql查询语句大全及用法

1. 创建表:

CREATE TABLE IF NOT EXISTS `mq_info` (  `id` INT(12) UNSIGNED AUTO_INCREMENT COMMENT 'mq信息数据库自增id', `topic` VARCHAR ( 255 ) NOT NULL COMMENT 'mq_topic名称',    `message` longtext NOT NULL COMMENT 'mq_message内容',  `markinfo` VARCHAR ( 255 ) COMMENT '该MQ的标识字段',  PRIMARY KEY ( `id` ) ) ENGINE = INNODB DEFAULT CHARSET = utf8;

2. 查询表中所有数据:

select * from mq_info;

3. 查询表中前20条数据:

select * from mq_info limit 20;

4. 表中新增一条数据:

insert into mq_info ( topic,message,markinfo) values('mq_test','{"testId":165,"operation":3}','testInfo001')

5. 修改表中某个字段的值:

//将id=1的数据的topic都改为'mqUpdate_test'update mq_info set topic='mqUpdate_test' where id='1'

//将id=1或topic='mq_test'的数据的topic都改为'mqUpdate_test',// markinfo都改为'testInfo_update'update mq_info set topic='mqUpdate_test',markinfo='testInfo_update' where id='1' or topic='mq_test'

6. 删除表中指定条件的某一条数据:

delete from mq_info where id = 1

7. 删除表中所有的数据:

delete from mq_info

8. 删除表中某一个字段:

//删除mq_info表中的markinfo字段alter table mq_info drop column markinfo

9. 修改表中某个字段的类型:

//修改mq_info表中的message字段类型为varchar类型alter table mq_info modify column message varchar(255);

10. 修改表中某个字段的备注信息:‍

//修改mq_info表中的markinfo字段的备注信息为'自定义该MQ的唯一标识'alter table mq_info modify markinfo varchar(255) comment '自定义该MQ的唯一标识'

11. 修改表中某个字段的名称:

//把mq_info表中的markinfo字段名改为description_Info,//类型是varchar(255)alter table mq_info change markinfo description_Info varchar(255)

12. 向已有的表中新增新的字段:

//向mq_info表新增insert_time字段,字段类型为datetime,//备注信息为'MQ落库时间'alter table mq_info add insert_time datetime comment 'MQ落库时间'

13. 修改已有表的表名:

alter table mq_info rename to cart_mq_info

14. 修改数据库中字段的顺序:

//将insert_time字段在表中的排列顺序//修改为显示在create_time字段后面alter table mq_info modify insert_time tinyint(4) after create_time//“FIRST”为可选参数,指的是将字段1修改为表的第一个字段,//“AFTER 字段名2”是将字段1插入到字段2的后面ALTER TABLE MODLFY 字段名1 数据类型 FIRST|AFTER 字段名2

15. 复制已有的表结构生成一张新表:

//复制mq_info表结构生成一张新表order_mq_infocreate table order_mq_info like mq_info

16. 某个字段模糊查询:

//查询mq_info表中topic字段包含test的所有数据SELECT * FROM mq_info where topic like '%test%';//优化写法:locate(‘substr’,str,pos), 提升查询效率SELECT * FROM mq_info where locate('test', topic)>0

17. 查询条件包含不等于:

//查询mq_info表中topic等于'order_info',并且markinfo不等于'test'的所有数据select * from mq_info where topic = 'order_info' and (markinfo != 'test' or markinfo is null)//注意加上条件markinfo is null,不然Markinfo为null的数据不会被查出来//注意()的作用,加括号是为了提高优先级先执行括号内的查询条件//在这个基础上再进行topic = 'order_info'的查询

18. 分组+条件查询:

student表数据如下:

mysql查询语句大全及用法

//查询每个老师带的学生的平均年龄(group by语法)//由于是查每个老师,因此要用TeacherID作为分组条件select TeacherID, avg(Age) as AGE from student group by TeacherID

//查询每个老师带的学生的平均年龄且平均年龄大于12(group by + having语法)//条件是带函数的,就必须用having,而不能用whereselect TeacherID, avg(Age) as AGEfrom student group by TeacherID having avg(Age) > 12

19. 连表查询,主表所有字段+从表部分字段:

//teacher表中没有存学生姓名,只存了学生id//需要将teacher表中create_time大于等于2022-10-28 00:00:00的所有数据以及学生的姓名查出来select teacher.*,student.studentName,from teacher_manage replay LEFT JOIN student_manage student on teacher.student_id=student.id where teacher.create_time >= '2022-10-28 00:00:00';


本文地址:百科问答频道 https://www.neebe.cn/wenda/886424.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • 外键约束怎么写,MySql外键约束教程

    外键约束怎么写,MySql外键约束教程

    外键约束怎么写,MySql外键约束教程学习目标掌握外键约束的添加方法知道外键约束字段的添加及删除规则1.多表查询概述l实际开发中,一个项目通常需要很多张表才能完成。l例如:一个商城项目就需要分类表(category)、商品表(product...

  • 数据库设计规范,mysql数据库设计规范

    数据库设计规范,mysql数据库设计规范

    数据库设计规范,mysql数据库设计规范规范背景与目的MySQL数据库与Oracle、SQLServer等数据库相比,有其内核上的优势与劣势。我们在使用MySQL数据库的时候需要遵循一定规范,扬长避短。本规范旨在帮助或指导RD、QA、OP等...

  • 数据库索引怎么用,MySQL数据库索引用法详细介绍

    数据库索引怎么用,MySQL数据库索引用法详细介绍

    数据库索引怎么用,MySQL数据库索引用法详细介绍关于MySQL索引,对于研发同学,尤其是后端研发同学,一定不会陌生。我们工作中经常会用到MySQL数据库,就肯定会经常用到性能优化方面的设计和考量,常常用涉及到MySQL索引。但是关于MyS...

  • mysql触发器怎么用,mysql触发器作用及使用案例

    mysql触发器怎么用,mysql触发器作用及使用案例

    mysql触发器怎么用,mysql触发器作用及使用案例1.什么是触发器 触发器(trigger):监视某种情况,并进行某种操作,它的执行并不是程序调用,也不是手工启动,而是由事件来触发,例如:对一张表进行操作(插入,更新,删除)时,就会触...

  • mysql数据库连接方法,mysql数据库连接

    mysql数据库连接方法,mysql数据库连接

    mysql数据库连接方法,mysql数据库连接依赖插件MySql.Data安装 使用之前需要先在vs中安装MySql.Data插件,本文采用Nuget方式安装 ,步骤如下:选中项目右键——》管理Nuget程序包 输入 MySql.Data...

  • 怎么建立数据库,mysql建立数据库方法

    怎么建立数据库,mysql建立数据库方法

    怎么建立数据库,mysql建立数据库方法目录简介 数据库和SQL MySQL介绍数据库使用 准备 新建数据库 连接数据库 新建数据表 插入数据简介数据库和SQL数据库(Database)是按照数据结...

  • 【MySQL】用户权限表实现方法

    【MySQL】用户权限表实现方法

    【MySQL】用户权限表实现方法MySQL在安装时会自动创建一个名为mysql的数据库,mysql数据库中存储的都是用户权限表。用户登录以后,MySQL会根据这些权限表的内容为每个用户赋予相应的权限。user表user表是MySQL中最重要...

  • mysql安装图解 mysql安装教程

    mysql安装图解 mysql安装教程

    mysql安装图解mysql是一个小型关系型数据库管理系统,如今已被很多公司广泛应用。但对于刚刚接触mysql数据库服务器的朋友来说,似乎还很陌生,为大家详细介绍一下mysql安装图解教程,以便初学者能够更好的掌握此数据库管理系统的操作。...

  • 周排行
  • 月排行
  • 年排行

精彩推荐