mysql语法速记

前言

在数据库领域,mysql是不可避免需要学习的,本文记录常见sql语句。

查看帮助信息

例如查看show命令的使用方法

1
help show;

数据库和表

创建数据库

1
create database test;

查看数据库

1
show databases;

选择数据库

1
use test;

删除数据库

1
drop database test;

查看数据库表

1
show tables;

删除数据表

1
drop table userInfo;

查看创建数据库或表的mysql语句

1
show create table aa;
Table Create Table
1 aa CREATE TABLE aa (
Enc_Account_Nbr int(11) DEFAULT NULL,
Residual_Code_Desc varchar(7) DEFAULT NULL,
Country1_Flag varchar(3) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8

显示信息

显示服务器状态信息

1
show status;

显示授予用户的安全权限

1
show grants;

显示错误或警告信息

1
show errors;


1
show warnings;

创建数据库表

假设创建名为userInfo的表,有三个字段,分别为name,age,和id。

1
2
3
4
5
create table if not exists userInfo(
name varchar(100) NOT NULL,
age INT,
id INT
);

插入几条测试数据:

1
2
3
4
insert into userInfo(name,age,id) values ("test",15,1);
insert into userInfo(name,age,id) values ("tet",15,2);
insert into userInfo(name,age,id) values ("编程珠玑",5,3);
insert into userInfo(name,age,id) values ("yanbinghu",5,4);

检索数据

检索特定列

从表userInfo中查找name列

1
select name from userInfo;
name
1 test
2 tet
3 编程珠玑
4 yanbinghu

检索多列

1
select name,age from userInfo;
name age
1 test 15
2 tet 15
3 编程珠玑 5
4 yanbinghu 5

检索所有列

1
select * from userInfo;
name age id
1 test 15 1
2 tet 15 2
3 编程珠玑 5 3
4 yanbinghu 5 4

检索限定结果数量

1
select name,age from userInfo limit 2;
name age
1 test 15
2 tet 15

检索某列不同的值

将age不同的列检索出来

1
select distinct age from userInfo;

age
1 15
2 5

检索结果排序

1
select * from userInfo order by age;
name age id
1 编程珠玑 5 3
2 yanbinghu 5 4
3 test 15 1
4 tet 15 2

按年龄递减顺序

1
select * from userInfo order by age desc;

name age id
1 test 15 1
2 tet 15 2
3 编程珠玑 5 3
4 yanbinghu 5 4

条件过滤

查找name为”test”的行

1
select * from userInfo where name="test";

name age id
1 test 15 1

除了可以用等于条件外,还可以使用

  • 大于

  • < 小于
  • <> 不等于

查找id在2到3范围的行:

1
select * from userInfo where id between 2 and 3;

name age id
1 tet 15 2
2 编程珠玑 5 3
守望 wechat
关注公众号[编程珠玑]获取更多原创技术文章
出入相友,守望相助!