mysql -sql语句
一、数据类型
- 1.日期和时间类型
| 类型 | 大小 | 范围 | 格式 | 用途 | 
| DATE | 3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | 日期值 | 
| TIME | 3 | -838:59:59/838:59:59 | HH:MM:SS | 时间值或持续时间 | 
| YEAR | 1 | 1901/2155 | YYYY | 年份值 | 
| DATETIME | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 | 
| TIMESTAMP | 4 | 1970-01-01 00:00:00/2037年 | YYYYMMDDHHMMSS | 混合日期和时间值时间戳 | 
- 2.字符串类型
| 类型 | 大小 | 用途 | 
| char | 0-255字节 | 定长字符串 | 
| varchar | 0-65535字节 | 变长字符串 | 
| tinyblob | 0-255字节 | 不超过255个字符的二进制字符串 | 
| tinytext | 0-255字节 | 短文本字符串 | 
| blob | 0-65535字节 | 二进制形式的长文本数据 | 
| text | 0-65535字节 | 长文本数据 | 
| mediumblob | 0-16 777 215字节 | 二进制形式的中等长度文本数据 | 
| mediumtext | 0-16 777 215字节 | 中等长度文本数据 | 
| longblob | 0-4 294 967 295字节 | 二进制形式的极大文本数据 | 
| longtext | 0-4 294 967 296字节 | 极大文本数据 | 
- 3.整型
| 类型 | 占用字节 | 无符号范围 | 有符号范围 | 数据库长度 | 
| tinyint | 1 | 0-255 | -128-127 | 4 | 
| smalint | 2 | 0-65535 | -32768-32767 | 6 | 
| mediumint | 3 | 0-16 777 215 | -8388608-8388607 | 9 | 
| int | 4 | 0-4294967295 | -2147483648-2147483647 | 11 | 
| bigint | 8 | 0-18446744073709551615 | -9223372036854755808-9223372036854775807 | 20 | 
- 4.浮点型
| 类型 | 大小 | 有符号范围 | 无符号范围 | 用途 | 
| float | 4字节 |  |  | 单精度浮点数值 | 
| double | 8字节 |  |  | 双精度浮点数值 | 
| decimal |  | 依赖于M和D的值 | 依赖于M和D的值 | 小数值 | 
- 5.字符型
| 类型 | 字节数和范围 | 
| CHAR(M) | M字节,1<=m<=255 | 
| VARCHAR(M) | L+1字节,在此 L<=M和1<=M<=255 | 
| TINYBLOB,TINYTEXT | L+1字节,在此L<2^8 | 
| BLOB,TEXT | L+2字节,在此L<2^16 | 
| MEDIUMBLOB,MEDIUMTEXT | L+3字节,在此L<2^24 | 
| LONGBLOB,LONGTEXT | L+4字节,在此L<2^32 | 
| ENUM(‘value1‘,'value2',....) | 1或2个字节,取决于枚举值的数目(最大值65535) | 
| SET('value1','value2',....) | 1,2,3,4或8个字节,取决于集合成员的数量(最多64个成员) | 
二、常用SQL语句
1、select命令
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 使用select命令查看mysql数据库系统信息:-- 打印当前的日期和时间selectnow();-- 打印当前的日期selectcurdate();-- 打印当前的时间selectcurtime();-- 打印当前数据库selectdatabase();-- 打印MySQL版本selectversion();-- 打印当前用户selectuser();--查看系统信息show variables;     #显示变量show global variables;  #显示全局变量show global variables like '%version%';show variables like '%storage_engine%';         #默认的存储引擎like和”_”模糊搜索还可用户where字句。MySQL提供两个通配符,用于与LIKE运算符一起使用,它们分别是:百分比符号 %和下划线 _。百分比(%)表示通配符允许匹配任何字符串的零个或多个字符。下划线(_)表示通配符允许匹配任何单个字符。 | 
2、建表用表插入数据查询数据
| 1 2 3 4 5 6 7 8 9 10 11 12 | mysql>mysql> create database zmedu;Query OK, 1 row affected (0.00 sec)mysql> use zmeduDatabase changedmysql> create table students(id int(11),stname char(20));Query OK, 0 rows affected (0.01 sec)mysql> insert intostudents values(1,'liuyong'),(1,'zhangru'),(3,'laowang'),(4,'tongtong');Query OK, 4 rows affected (0.00 sec)Records: 4  Duplicates: 0  Warnings: 0 | 
3、查看系统运行状态
| 1 2 3 | 查看系统运行状态信息:mysql> show status;      #查看运行状态mysql> show global status like 'Thread%';        #显示全局状态 | 
4、逻辑运算
| 1 2 3 4 | and or notand 且or 或not 非 | 
5、查询导入的数据
| 1 2 | mysql> selectbName,publishing,price frombooks whereprice=30 or price=40 or price=50 or price=60;mysql> selectbName,price frombooks whereprice in(50,60,70); | 
6、算数运算符
| 1 2 3 4 5 6 | =   等于<>    不等于 !=>     大于<    小于=   大于等于<=   小于等于 | 
7、排序
| 1 2 | 升序:order by“排序的字段” asc 默认降序:oredr by“排序的字段” desc | 
| 1 | mysql> selectbName,price frombooks whereprice in(50,60,70) order byprice asc; | 
8、范围运算
[not]between …and…
Between and 可以使用大于小于的方式来代替,并且使用大于小于意义表述更明确
实例:
查找价格不在30到60之间的书名和价格
| 1 | mysql> selectbName,price frombooks whereprice not between 30 and 60 order byprice desc; | 
9、模糊匹配
| 1 2 | 实例:mysql> selectbName frombooks wherebName like '%程序%'; | 
10、MySQL子查询
概念:在select 的where条件中又出现了select,查询中嵌套着查询
| 1 | mysql> selectbName,bTypeId frombooks wherebTypeId=(selectbTypeId fromcategory wherebTypeName='网络技术'); | 
11、limit限定显示条目
Format:SELECT * FROM table LIMIT [offset,] rows
偏移量 行数
  LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1)。
比如select * from table limit m,n语句
表示其中m是指记录开始的index,从0开始,表示第一条记录
n是指从第m+1条开始,取n条。
查出category表中第2条到第6行的记录。
首先2到6行有2,3,4,5,6总共有5个数字,从2开始,偏移量为1
| 1 | mysql> select* fromcategory limit 1,5; | 

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号