mysql sql语句
创建 create
修改 alter
删除 drop
查看 show
1.1创建数据库
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
COLLATE:指定数据库字符集的比较方式(校对规则)
create database mydb1;
create database mydb2 character set utf8;
create database mydb3 character set utf8 collate utf8_general_ci;
1.2 查看删除数据库
显示数据库语句:
SHOW DATABASES
显示数据库创建语句:
SHOW CREATE DATABASE db_name
数据库删除语句:
DROP DATABASE [IF EXISTS] db_name
show databases;
show create database mydb2;
drop database mydb3;
1.3 修改,备份、恢复数据库
ALTER DATABASE [IF NOT EXISTS] db_name [alter_specification[,alter_specification] ...]
alter_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
备份数据库表中的数据mysqldump -u 用户名 –p密码 数据库名 > 文件名.sql
恢复数据库Source 文件名.sql
alter database mydb2 character set gbk;
1.4 创建表
CREATE TABLE table_name
(
field1 datatype,
field2 datatype,
field3 datatype
)character set charsetname collate collatename
field:指定列名 datatype:指定列类型
分类 |
数据类型 |
说明 |
数值类型 |
BIT(M) bit bit(8) TINYINT [UNSIGNED] [ZEROFILL] byte BOOL,BOOLEAN boolean SMALLINT [UNSIGNED] [ZEROFILL] short INT [UNSIGNED] [ZEROFILL] int BIGINT [UNSIGNED] [ZEROFILL] long FLOAT[(M,D)] [UNSIGNED] [ZEROFILL] float DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL] double |
位类型。M指定位数,默认值1,范围1-64 带符号的范围是-128到127。无符号0到255。 使用0或1表示真或假 2的16次方 2的32次方 2的64次方 M指定显示长度,d指定小数位数 表示比float精度更大的小数 |
文本、二进制类型 |
CHAR(size) char(20) max—255 abc VARCHAR(size) varchar(20) 65535 abcde String BLOB LONGBLOB 大的二进制数据 TEXT(clob) LONGTEXT(longclob) 大文本数据 |
固定长度字符串 可变长度字符串 二进制数据 大文本 |
时间日期 |
DATE/DATETIME/TimeStamp |
日期类型(YYYY-MM-DD) (YYYY-MM-DD HH:MM:SS),TimeStamp表示时间戳,它可用于自动记录insert、update操作的时间 |
注意:创建表前,要先使用use db语句使用库。显示数据库中的所有表 show tables
create table person(name varchar(20),age int);
ALTER TABLE table ADD (column datatype [DEFAULT expr] [, column datatype]...);
ALTER TABLE table MODIFY (column datatype [DEFAULT expr][, column datatype]...);
ALTER TABLE table DROP (column);
alter table person add account int;
Insert语句 (增加数据)Update语句 (更新数据)Delete语句 (删除数据)Select语句 (查找数据)
INSERT INTO tablename [(column [, column...])]VALUES (value [, value...]);
插入空值,不指定或insert into table value(null) // “”
UPDATE tbl_name SET col_name1=expr1 [, col_name2=expr2 ...][WHERE where_definition]
delete from tbl_name [WHERE where_definition]
SELECT [DISTINCT] *|{column1, column2. column3..} FROM table;
Select 指定查询哪些列的数据。column指定列名。*号代表查询所有列。From指定查询哪张表。DISTINCT可选,指显示结果时,是否剔除重复数据
create table student(
id int,
name varchar(20),
chinese float,
english float,
math float
); insert into student(id,name,chinese,english,math) values(1,'张小明',89,78,90);
insert into student(id,name,chinese,english,math) values(2,'李进',67,53,95);
insert into student(id,name,chinese,english,math) values(3,'王五',87,78,77);
insert into student(id,name,chinese,english,math) values(4,'李一',88,98,92);
insert into student(id,name,chinese,english,math) values(5,'李来财',82,84,67);
insert into student(id,name,chinese,english,math) values(6,'张进宝',55,85,45);
insert into student(id,name,chinese,english,math) values(7,'黄蓉',75,65,30);
SELECT*|{column1|expression, column2|expression,..}FROM table;
SELECT column as 别名 from 表名;
比较运算符 |
> < <= >= = <> |
大于、小于、大于(小于)等于、不等于 |
BETWEEN ...AND... |
显示在某一区间的值 |
|
IN(set) |
显示在in列表中的值,例:in(100,200) |
|
LIKE ‘张pattern’ |
模糊查询 |
|
IS NULL |
判断是否为空 |
|
逻辑运算符 |
and & |
多个条件同时成立 |
or | |
多个条件任一成立 |
|
not ! |
不成立,例:where not(salary>100); |
Like语句中,% 代表零个或多个任意字符,_ 代表一个任意字符,例first_name like ‘_a%’;
SELECTcolumn1, column2. column3..FROM table order by column asc|desc
Order by 指定排序的列,排序的列即可是表中的列名,也可以是select 语句后指定的列名。Asc升序、Desc降序ORDER BY 子句应位于SELECT语句的结尾。
Select count(*)|count(列名) from tablename [WHERE where_definition]
Select sum(列名){,sum(列名)…} from tablename [WHERE where_definition]
Select avg(列名){,avg(列名)…} from tablename [WHERE where_definition]
Select max(列名) from tablename [WHERE where_definition]
http://www.w3school.com.cn/sql/index.asp
mysql sql语句的更多相关文章
- mysql sql语句大全(转载)
1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- 创建 ...
- MYSQL SQL语句技巧初探(一)
MYSQL SQL语句技巧初探(一) 本文是我最近了解到的sql某些方法()组合实现一些功能的总结以后还会更新: rand与rand(n)实现提取随机行及order by原理的探讨. Bit_and, ...
- MySQL客户端工具的使用与MySQL SQL语句
MySQL客户端工具的使用 1.MySQL程序的组成 客户端 mysql:CLI交互式客户端程序 mycli:CLI交互式客户端程序;使用sql语句时会有提示信息 mysql_secure_insta ...
- 利用tcpdump抓取mysql sql语句
这个脚本是我之前在网上无意间找个一个利用tcpdump 抓包工具获取mysql流量,并通过过滤把sql 语句输入. 脚本不是很长,但是效果很好. #!/bin/bash #this script us ...
- 程序员实用的 MySQL sql 语句
这儿只讲究实用, 程序员编程时常用到的 MySQL的 sql语句(不包括基本的 select, update, delete 等语句). 1. 添加一个用户build,并赋予所有权限的命令 gran ...
- MySQL SQL语句分析查询优化
如何获取有性能问题的SQL 1.通过用户反馈获取存在性能问题的SQL 2.通过慢查询日志获取性能问题的SQL 3.实时获取存在性能问题的SQL 使用慢查询日志获取有性能问题的SQL 首先介绍下慢查询相 ...
- mysql sql语句执行时是否使用索引检查方法
在日常开发中,使用到的数据表经常都会有索引,这些索引可能是开发人员/DBA建表时创建的,也可能是在使用过程中新增的.合理的使用索引,可以加快数据库查询速度.然而,在实际开发工作中,会出现有些sql语句 ...
- MYSQL SQL语句优化
1.EXPLAIN 做MySQL优化,我们要善用EXPLAIN查看SQL执行计划. 下面来个简单的示例,标注(1.2.3.4.5)我们要重点关注的数据: type列,连接类型.一个好的SQL语句至少要 ...
- mysql sql语句最大长度设置方法
今天发现了一个错误:Could not execute JDBC batch update 最后发现原因是SQL语句长度大于1M,而我机器上的mysql是默认设置,也就是说mysql通讯的数据包大小设 ...
- 自制小工具大大加速MySQL SQL语句优化(附源码)
引言 优化SQL,是DBA常见的工作之一.如何高效.快速地优化一条语句,是每个DBA经常要面对的一个问题.在日常的优化工作中,我发现有很多操作是在优化过程中必不可少的步骤.然而这些步骤重复性的执行,又 ...
随机推荐
- 【转】如何成为一位优秀的创业CEO
编者按:本文来自 Ryan Allis,是一位来自旧金山的创业者和投资人.在 2003 年创立了 iContact,并任 CEO. 做创业公司的 CEO 可以说是世界上最有挑战性的事情之一.你得让客户 ...
- ATM取款~~
package com.jredu.ch03; import java.util.Scanner; public class Atmmmmmmmmmm { static int totalMoney= ...
- MSDN官方数据库开发群
QQ群1:43563009 创建人:中国风(Roy_88) 创建时间:2007-07-21 当前人数:326人 QQ群2:27156079 创建人: fcuandy 创建时间:2008-03-20 当 ...
- [LeetCode] Decode String 题解
题目 题目 s = "3[a]2[bc]", return "aaabcbc". s = "3[a2[c]]", return " ...
- MYSQL性能优化--分库分表
1.分库分表 1>纵向分表 将本来可以在同一个表的内容,人为划分为多个表.(所谓的本来,是指按照关系型数据库的第三范式要求,是应该在同一个表的.) 分表理由:根据数据的活跃度进行分离,(因为不同 ...
- 如何使用bootstrap
前言: 前几天,本想做一个登陆界面,但自己写form表单必然很丑,所以想用下bootstarp框架,之前听别人说bootstrap很牛的样子.但我完全不会bootstrap... 下载&目录 ...
- linuxCentOs6前期简单且必要的设置
1.修改主机名 Sudo vi /etc/sysconfig/network(需要重启) Hostname master (不需要重启,设置当前主机名为master) Hostname查看当前主机名 ...
- 华为C语言编程规范笔记1
入职之前,公司培训,做了点笔记~
- 利用sub lr,lr,#4:程序是如何进行返回的?
1: ARM采用的是3级流水线 ARM的流水线结构为: 取指 -----> 译码 ------> 执行 ARM代码: PC PC- ...
- ELK日志分析系统的应用
收集和分析日志是应用开发中至关重要的一环,互联网大规模.分布式的特性决定了日志的源头越来越分散, 产生的速度越来越快,传统的手段和工具显得日益力不从心.在规模化场景下,grep.awk 无法快速发挥作 ...