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 ...
随机推荐
- 手工生成AWR报告方法记录
AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告 ...
- Sublime Text 安装插件时出现There are no packages available for installation解决步骤
1.点击 ctrl+`打开控制台后,发现是因为http://packagecontrol.io/channel_v3.json 获取失败,下载v3.json(在百度云盘) 2.找到Sublime\Da ...
- (转+整理)C#中动态执行代码
通过微软提供的CSharpCodeProvider,CompilerParameters,CompilerResults等类,可以在运行时,动态执行自己写的代码文件.原理就是把你的代码文件动态编译成e ...
- JavaScript 第十章总结:first class functions
前言 这一章的内容是 advanced knowledge and use of functions. 讲了关于 function 的使用的一些特殊的方面. function expression 的 ...
- 使用Vuex来处理Authentication token
https://www.cnblogs.com/chentianwei/p/10156459.html 之前博客:建立了一个app.使用loacal storage 来管理tokens(通过clien ...
- 纯CSS方块转化梯形动画
http://jasonning92.github.io/JasonsBlog/pages/%E7%BA%AFCSS%E6%96%B9%E5%9D%97%E8%BD%AC%E5%8C%96%E6%A2 ...
- KM算法 带权二分匹配 O(n^3)
#include<cstdio> #include<cstdlib> #include<cstring> #include<string> #inclu ...
- Django的form组件
forms组件 forms组件,是一个类.在视图函数中创建一个类,类需要继承forms.Form from django import forms 1.校验数据 步骤和语法: 1. 创建一个form ...
- chmod 没有x权限怎么办
解决方法1: # /lib64/ld-linux-x86-64.so.2 /bin/chmod 755 /bin/chmod //linux动态命令库 解决方法2:方法2提到的两种方法形 ...
- 完整的Django入门指南学习笔记3
前言 在本节课中,我们将深入理解两个基本概念: URLs 和 Forms.在这个过程中,我们还将学习其它很多概念,如创建可重用模板和安装第三方库.同时我们还将编写大量单元测试. 如果你是从这个系列教程 ...