mysql常用语句及关键字

一、常用sql语句

1.创建数据库

create  database test;

2.删除数据库

drop database test;

3.使用数据库

use test;

4.创建数据表

create table sys_role(
 id int(4) not null primary key ,
 available char(20) not null,
 description char(20) not null,
 role char(20) not null
 )  engine=InnoDB default charset=utf8;

5.删除数据表

drop table if   exists  sys_role;

6.插入数据

insert  into  sys_role   values(1,‘0‘,‘管理员‘,‘admin‘);
7.查询数据

select * from sys_role;

8.修改数据

update sys_role  set role=‘user‘ where id=1;

9.删除数据

delete from sys_role  where id=1;

二、关键字及符号

0. Constraints :SQL 约束

约束用于限制加入表的数据的类型。
可以在创建表时规定约束(通过 CREATE TABLE 语句),或者在表创建之后也可以(通过 ALTER TABLE 语句)。
比如,not null,unique,primary key,foreign key,default都属于约束

可以用CONSTRAINT 命名约束。如下,命名外键约束为fk_PerOrders。

CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (Id_O),
CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P)
REFERENCES Persons(Id_P)
)

1.primary key 主键

主键表示该列值在表中是唯一的,不可以有重复。

主键必须包含唯一的值。主键列不能包含 NULL 值。
每个表都应该有一个主键,并且每个表只能有一个主键。

2.auto_increment  自增

auto_increment 就是对主键自动增加编号的。

3.unsigned  无符号
unsigned是无符号的意思,代表该字段没有正负。

4.字段数据类型中,varchar和char的区别是什么?

varchar长度是可变的,能够节省空间。比如说存储"abc",CHAR(10)需要10个字符的空间来储存,而VARCHAR(10)只需要3个字符的空间。

5.FOREIGN KEY  外键约束

一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。

如下示,Id_P是Orders表的外键,也是Persons表的主键。可以用CONSTRAINT 命名约束。命名外键约束为fk_PerOrders。

CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (Id_O),
CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P)
REFERENCES Persons(Id_P)
)

6.  % 通配符,表示一个或多个字符

如下示,查询170开头的电话号码。

select * from phone_info  where  phoneNumber like  "170%"

7.  JOIN  用于根据两个或多个表中的列之间的关系,从这些表中查询数据。通过Inner Join  ...  On   实现。

如下示,查找Persons中Id_P和Orders表中Id_P相同的数据。
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName

各种join的区别:

JOIN: 如果表中有至少一个匹配,则返回行

INNER JOIN 与 JOIN 是相同的。
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行

8. UNION  联表查询
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 联合的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。
同时,每条 SELECT 语句中的列的顺序必须相同。

如下示:

SELECT Employee_Name FROM Employees_China
UNION   SELECT Employee_Name FROM Employees_USA
另外,UNION和UNION ALL区别:
默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。

9.UNIQUE 约束, 使数据库表中的某一列或某几列的里面的内容不重复

10.SELECT INTO   查询并插入
SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。

SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。

SELECT LastName,FirstName
INTO Persons_backup
FROM Persons

11.Group By   分组

将查询结果按某一列或多列的值分组

如下示:

select Cno,count(sno)
from course
group by Cno;

一张表,一旦分组完成后,查询后只能得到组相关的信息。可以通过count,sum,max,min,avg统计。

--统计分组后各种情况的数量
select  count(*),age,sex  from staff where 1=1
and create_date>=‘2018-05-07 00:00:00‘  
group by age,sex
order by age asc

12.Having     

对由sum()或其它集合函数运算结果的输出进行限制。如下示:

SELECT store_name, SUM(sales)
FROM Store_Information
GROUP BY store_name
HAVING SUM(sales) > 1500

13.COUNT(column_name) 函数返回指定列的值的数目

COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:

14.Case   ...  When 可以作为COUNT的条件

比如,count( CASE WHEN ERRSTR is  not null THEN 1 ELSE NULL END )表示如果ERRSTR不是空那么就计数1,用于计算ERRSTR不为空的数量

类似于编程语言中的if else。是判断语句

比如:

select    MOND_ID,INTERFACE_CODE,count(*) as REQUEST_COUNT, count( CASE WHEN ERRSTR is  not null THEN 1 ELSE NULL END ) as FAILURE_COUNT
from vbase.ESB_TRACE_20180428 where 1=1
and CREATE_DATE>=‘2018-04-28 09:00:00‘  
and  CREATE_DATE<‘2018-04-28 09:30:00‘
and INTERFACE_CODE=‘Svc_ProvisionRet‘
group by MOND_ID,INTERFACE_CODE
order by MOND_ID asc

四、Index   索引

索引对于操作者,仅仅提供创建、删除和修改的功能。操作者在增删改查过程中,系统会自动调用索引。

可以在表中创建索引,以便更加快速高效地查询数据。通过Create Index ... On实现。

创建一个简单的索引,名为 "PersonIndex",在 Person 表的 LastName 列,如下示:

CREATE INDEX PersonIndex
ON Person (LastName)

九、附录。 思考:

原文地址:https://www.cnblogs.com/expiator/p/8533956.html

时间: 2024-11-08 23:07:58

mysql常用语句及关键字的相关文章

MySQL 常用语句大全

MySQL 常用语句大全 一.连接 MySQL 格式: mysql -h 主机地址 -u 用户名 -p 用户密码 1.例 1:连接到本机上的 MYSQL. 首先在打开 DOS 窗口,然后进入目录 mysql bin,再键入命令 mysql -uroot -p,回 车后提示你输密码,如果刚安装好 MYSQL,超级用户 root 是没有密码的,故直接回车即 可进入到 MYSQL 中了,MYSQL 的提示符是: mysql>. 2.例 2:连接到远程主机上的 MYSQL.假设远程主机的 IP 为:11

Mysql常用语句总结

对MySql经常使用语句的详细总结 下面总结的知识点全是经常用的,全都是干货,好好收藏吧./* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限验证登录MySQL */ mysqld --skip-grant-tables -- 修改root密码 密码加密函数password() update mysql.user set password=password('root'); SHOW

7 mysql常用语句汇总

mysqld 常规MySQL服务器mysqld-opt 优化mysql服务器,提供一些功能可以挖掘更好的功能mysqld-max 与mysqld一样,但可以支持更新,更具实验性质的功能(更不稳定) ++安装mysql参见自带的INSTALL-SOURCE文件$ ./configure ?prefix=/app/mysql-5.0.51a ?with-charset=utf8 ?with-extra-charsets=utf8,gb2312,utf8 ++启动/关闭mysql$ path/mysq

MySQL 常用语句以及基础知识

RHEL7安装MariaDBYum install –y mariadb mariadb-serverMysql_installdb //初始化数据库? 可以为root帐户设置密码.? 可以删除root可从本地主机以外访问的帐户.? 可以删除匿名用户帐户.? 可以删除test数据库(默认情况下,所有用户甚至匿名用户都可以访问该数据库)以及允许任何人访问以名称开头的数据库的权限 test.如果不初始化数据库,mysql可以匿名登陆,会生成test数据库.....Mysqld_safe & //平滑

[基础学习]MySQL常用语句命令总结

前言 相信平时大家在开发时都会使用MySQL数据库,它是目前比较火的一款数据库工具,对于大多数企业的业务来说,MySQL可以很完美地支持了. 很多时候我们都是借助mysql可视化工具操作mysql,虽然说是比较方便,但是记住一些常用的命令还是有必要的. 我们来总结一下,一些平时比较常用的语句命令: 1.更改root密码 mysqladmin -uroot password 'new_password' 2.登录MySQL服务器 mysql -h120.0.0.1 -uroot -p*** -p3

MYSQL 常用语句与函数命令

进图数据库mysql –u root –p 输入密码后进入 查看数据库: show databases; 进入数据库:use dvwa; 查看该数据库的表:show tables; 查操作: select * from users; 查看表中的的列 select user from users; 查看users表中user这列的信息 select * from users where user=’admin’ ;查看users表中user=admin的所有信息 增操作: Insert into

mysql常用语句2

很多mysql语句用的时候想不起来,现在用个简单的例子记着. /*SQLyog 企业版 - MySQL GUI v8.14 MySQL - 5.1.49-community **********************************************************************//*!40101 SET NAMES utf8 */; create table `t_student` (`id` double ,`stuName` varchar (60),`a

mysql常用语句1

很多mysql语句用的时候想不起来,现在用个简单的例子记着. /*SQLyog Ultimate v11.33 (64 bit)MySQL - 5.1.49-community : Database - db_book**********************************************************************/ /*!40101 SET NAMES utf8 */; /*!40101 SET SQL_MODE=''*/; /*!40014 SET

mysql常用语句、命令(增删改查功能)

修改数据库的字符集    mysql>use mydb    mysql>alter database mydb character set utf8;创建数据库指定数据库的字符集    mysql>create database mydb character set utf8; 查看database的字符集! show variables like 'collation_%';show variables like 'character_set_%'; 一.系统操作 1. 打开服务:n