热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:MySQLSQL语句

篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL-SQL语句相关的知识,希望对你有一定的参考价值。一、数据

篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL-SQL语句相关的知识,希望对你有一定的参考价值。



一、数据类型



  1. 1.日期和时间类型















































类型大小范围格式用途
DATE31000-01-01/9999-12-31YYYY-MM-DD日期值
TIME3-838:59:59/838:59:59HH:MM:SS时间值或持续时间
YEAR11901/2155YYYY年份值
DATETIME81000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
TIMESTAMP41970-01-01 00:00:00/2037年YYYYMMDDHHMMSS混合日期和时间值时间戳

 

 

 

 

 

 

 

 

 

 

 



  1. 2.字符串类型




























































类型大小用途
char0-255字节定长字符串
varchar0-65535字节变长字符串
tinyblob0-255字节不超过255个字符的二进制字符串
tinytext0-255字节短文本字符串
blob0-65535字节二进制形式的长文本数据
text0-65535字节长文本数据
mediumblob0-16 777 215字节二进制形式的中等长度文本数据
mediumtext0-16 777 215字节中等长度文本数据
longblob0-4 294 967 295字节二进制形式的极大文本数据
longtext0-4 294 967 296字节极大文本数据

 

 

 

 

 

 

 

 

 

 

 

 




  1. 3.整型










































































类型占用字节无符号范围有符号范围数据库长度
tinyint10-255-128-1274
smalint20-65535-32768-327676
mediumint30-16 777 215-8388608-83886079
int40-4294967295-2147483648-214748364711
bigint80-18446744073709551615-9223372036854755808-922337203685477580720

 

 

 

 

 

 

 





  1. 4.浮点型






















































类型大小有符号范围无符号范围用途
float4字节单精度浮点数值
double8字节双精度浮点数值
decimal依赖于M和D的值依赖于M和D的值小数值

 

 

 

 

 

 

 

 




  1. 5.字符型












































































类型字节数和范围
CHAR(M)M字节,1<=m<=255
VARCHAR(M)L+1字节,在此 L<=M和1<=M<=255
TINYBLOB,TINYTEXTL+1字节,在此L<2^8
BLOB,TEXTL+2字节,在此L<2^16
MEDIUMBLOB,MEDIUMTEXTL+3字节,在此L<2^24
LONGBLOB,LONGTEXTL+4字节,在此L<2^32
ENUM(‘value1‘,\'value2\',....)1或2个字节,取决于枚举值的数目(最大值65535)
SET(\'value1\',\'value2\',....)

1,2,3,4或8个字节,取决于集合成员的数量(最多64个成员)





 

 

 

 

 

 

 

 




二、常用SQL语句

1、select命令


使用select命令查看mysql数据库系统信息:
-- 打印当前的日期和时间
select now();
-- 打印当前的日期
select curdate();
-- 打印当前的时间
select curtime();
-- 打印当前数据库
select database();
-- 打印MySQL版本
select version();
-- 打印当前用户
select user();
--查看系统信息
show variables; #显示变量
show global variables; #显示全局变量
show global variables like \'%version%\';
show variables like \'%storage_engine%\'; #默认的存储引擎
like和”_”模糊搜索还可用户where字句。
MySQL提供两个通配符,用于与LIKE运算符一起使用,它们分别是:百分比符号 %和下划线 _。
百分比(%)表示通配符允许匹配任何字符串的零个或多个字符。
下划线(_)表示通配符允许匹配任何单个字符。

2、建表用表插入数据查询数据


mysql>
mysql> create database zmedu;
Query OK, 1 row affected (0.00 sec)
mysql> use zmedu
Database changed
mysql> create table students(id int(11),stname char(20));
Query OK, 0 rows affected (0.01 sec)
mysql> insert into students values(1,\'liuyong\'),(1,\'zhangru\'),(3,\'laowang\'),(4,\'tongtong\');
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0

3、查看系统运行状态


查看系统运行状态信息:
mysql> show status; #查看运行状态
mysql> show global status like \'Thread%\'; #显示全局状态

4、逻辑运算


and or not
and 且
or 或
not 非

5、查询导入的数据


mysql> select bName,publishing,price from books where price=30 or
price=40 or price=50 or price=60;
mysql> select bName,price from books where price in (50,60,70);

6、算数运算符


= 等于
<> 不等于 !=
>     大于
< 小于
= 大于等于
<= 小于等于

7、排序


升序:order by “排序的字段” asc 默认
降序:oredr by “排序的字段” desc


mysql> select bName,price from books where price in (50,60,70) order by price asc;

8、范围运算

[not]between …and…
Between and 可以使用大于小于的方式来代替,并且使用大于小于意义表述更明确
实例:
查找价格不在30到60之间的书名和价格


mysql> select bName,price from books where price not between 30 and 60 order by price desc;

9、模糊匹配


实例:
mysql> select bName from books where bName like \'%程序%\';

10、MySQL子查询

概念:在select 的where条件中又出现了select,查询中嵌套着查询


mysql> select bName,bTypeId from books where bTypeId=(select bTypeId from category where bTypeName=\'网络技术\');

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


mysql> select * from category limit 1,5;



推荐阅读
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了将mysql从5.6.15升级到5.7.15的详细步骤,包括关闭访问、备份旧库、备份权限、配置文件备份、关闭旧数据库、安装二进制、替换配置文件以及启动新数据库等操作。 ... [详细]
  • WhenIusepythontoapplythepymysqlmoduletoaddafieldtoatableinthemysqldatabase,itdo ... [详细]
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
  • MySQL修改表结构操作命令总结【MySQL】
    数据库|mysql教程MySQL,修改表结构命令数据库-mysql教程表的结构如下:错误页面源码,ubuntu电脑自动休眠,爬虫造景视频,rapapiphp,廊坊seo开发lzwm ... [详细]
  •   《WindowsAzurePlatform系列文章目录》  本文将介绍如何在AzureSQLDatabase创建只读用户。  请先按照笔者之前的文章:AzureSQLDatabas ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • 本文介绍了一种轻巧方便的工具——集算器,通过使用集算器可以将文本日志变成结构化数据,然后可以使用SQL式查询。集算器利用集算语言的优点,将日志内容结构化为数据表结构,SPL支持直接对结构化的文件进行SQL查询,不再需要安装配置第三方数据库软件。本文还详细介绍了具体的实施过程。 ... [详细]
author-avatar
蟹子的宿命
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有