MYSQL基础知识小盲区
MYSQL必会的知识
- 命令行 启动mysql: mysql -u用户名 -p密码
- 显示表中的各列详细信息: show columns form tablename 等价于 desc tablename
- 查看所有show命令: help show
- 查询数据时未使用排序,显示的结果是没有顺序意义的
- 去掉重复的行使用distinct: select distinct id from user
- limit关键字的使用: select * from user limit 5; 查询出不多于5行数据 select * from user limit 5,5; 从第五行数据开始查询,返回5条记录 (即5到10 的记录)
- 使用order by 进行排序,默认的是升序排列: select *from user order by age desc,name ; 按照年龄降序排列,年龄相同时按照姓名升序排列
- 查询name字段为null的记录: select * from user where name is null;
- 关键字 and 和 or,优先处理and,然后再处理or旁边的语句,并且每个只执行一次。
- 通配符: % 匹配一个或多个字符 select * from user where name='a%'; 查询所有name以a开头的记录 这里的查询条件区分大小写
- 查询条件为‘%’时 select * from user where name='%';不会匹配name为null的记录
- 通配符 “-” 只匹配一个字符
- mysql的正则表达式关键字 regexp: select *from user where age regexp '10' ; 查询所有年龄为10的记录
- 正则表达式符号“.” 一个点表示匹配任意一个字符 select * from user where age regexp '.0';查询出所有年龄为整10的记录,可以是10,20,30,等等。
- 就加入需要使用正则表达式去匹配.点这个符号,则需要转义,使用 \\. 去匹配
- 符号 ^ 的作用有两个:一个是表示指定串的开始,另一个是在集合中表示否定集合
- 符号 $ 的作用: 表达式的结束
- 拼接字符串使用关键字contact, contact(a,'(',b,')')
- RTrim(name) 去掉name这一列的右边的所有空格
- LTrim(name) 去掉name这一列的左边的所有空格
- Trim(name) 去掉name这一列的两边的全部空格
- 函数left() ,使用示例: select left('zhangsan',1); 返回字符串zhangsan的一个字符z
- 函数Locate(),使用示例: select locate('a','bbabc'); 返回第一个字符串在第二个字符串中出现的位置 3
- 函数Soundex() 使用示例: select * from user where Soundex(name) = Soundex('li');返回所有name的读音和 li 相似的记录
- 查看系统时间的函数: select CurDate() ;查看当前日期 ,select CurTime() ; 查看当前时间
- 函数max()和函数min()都会忽略掉职位null的行
- 聚集函数中可以使用distinct ,例如: select avg(distinct age) as ageavg from user;
- 关键字group by必须在where后和order by 之前
- where用来过滤行,having用来过滤分组 例如: select id ,count(*) as nums from user group by id having count(*)>=2;
- 关键字union链接查询语句,至少由两条select语句组成,多个之间都是用union连接(使用union时会自动去掉重复的行记录,如果不想去掉就使用 union all)
- 全文本搜索 Match() 指定搜索的列,Aganist()指定要使用的表达式
- 全文搜索示例:select text from mail where Match(text) Aganist('right'); 其中text是定义表的时候指定的索引字段,FULLTEXT(text)定义
- 创建表,id自增时设置 id int(10) primary key auto_increment
- 修改列名和数据类型: alter table 表名 change column 旧列名 新列名 列类型; alter table user change column name username varchar(30); 将user表中的name列变为username.
- 添加列: alter table user ADD hobby varchar(30);为user表中添加新列hobby,类型为varchar
- 删除列: alter table user DROP column age ; 删除user表中age那一列
- 重命名表: rename table 旧表名 to 新表名; alter table user to person; 将名为user的表改名为 person.
MYSQL基础知识小盲区的更多相关文章
- MySQL 基础知识梳理
MySQL 的安装方式有多种,但是对于不同场景,会有最适合该场景的 MySQL 安装方式,下面就介绍一下 MySQL 常见的安装方法,包括 rpm 安装,yum 安装,通用二进制安装以及源码编译安装, ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- mysql基础知识大全
前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里作简单概括性的介绍,具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续会慢慢补充完善. 数据库和数据库软件 数据库是 ...
- java基础知识小小结
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- mysql基础知识语法汇总整理(二)
mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...
- mysql基础知识语法汇总整理(一)
mysql基础知识语法汇总整理(二) 连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...
- MySQL基础知识:启动管理和账号管理
整理.记录常用的MySQL基础知识:时间久了,很多就忘记了. 操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL. ...
- MySQL基础知识:创建MySQL数据库和表
虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习. 在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库.表.索引.外 ...
- MySQL基础知识:Character Set和Collation
A character set is a set of symbols and encodings. A collation is a set of rules for comparing chara ...
随机推荐
- EOJ Monthly 2018.11 D. 猜价格
猜价格 分两种情况讨论: k≤n,先猜至多 k 次 1,由于回答 <1 肯定是假的,所以可以把剩余系下是哪次错试出来,然后用至多 n 次搞定. k>n,每个数都猜两次,如果两次结果不一样, ...
- Python2 - MySQL适配器 MySQLdb
本文实例讲述了python中MySQLdb模块用法.分享给大家供大家参考.具体用法分析如下: MySQLdb其实有点像php或asp中连接数据库的一个模式了,只是MySQLdb是针对mysql连接了接 ...
- angular2 脏检查机制
https://www.waitig.com/angular2-%E8%84%8F%E6%A3%80%E6%9F%A5%E8%BF%87%E7%A8%8B.html https://zhuanlan. ...
- legend2---开发日志4(常用的链接传值方式有哪些)
legend2---开发日志4(常用的链接传值方式有哪些) 一.总结 一句话总结:常用的其实就是get和post,不过有具体细分 a标签 post表单 js方式拼接url 1.js正则尽量少匹配的符号 ...
- echarts画中国地图并上色
任务是画一个中国地图,并在指定区域上颜色,学姐说用arcgis画,乖乖,4个g的安装文件,算了, 还是echarts大法好..如果想熟悉这个牛X的工具,请移步https://www.w3cschool ...
- [转] @JoinColumn 详解 (javax.persistence.JoinColumn)
原文链接:@JoinColumn详解 原文标的也是转载,但是没有注明原文链接,看起来乱乱的,所以整理一下转载过来,顺便细看一下 1. 一对一 现假设有Person表和Address表,是一对一的关系 ...
- 雷林鹏分享:C# 可空类型(Nullable)
C# 可空类型(Nullable) C# 可空类型(Nullable) C# 提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示其基础值类型正常范围内的值,再加上一个 nu ...
- English trip M1 - AC9 Nosey people 爱管闲事的人 Teacher:Solo
In this lesson you will learn to talk about what happened. 在本课中,您将学习如何谈论发生的事情. 课上内容(Lesson) # four “ ...
- JUnit 4.0学习笔记
JUnit命令整理 @Test(timeout= ) : 测试时间超过范围即失败 @Test(expected=) : 申明出会发生的异常 @Before : 在每一个测试方法前执行 @After ...
- MyBatis中mybatis-generator代码生成的一般过程
MyBatis框架的使用,可以参考我的文章: https://blog.csdn.net/JayInnn/article/details/81746571(基于Mybatis实现一个查库的接口) ht ...