MySql-常用函数

常用函数

  • 查找某表 以创建时间降序排序的前三位数据-- LIMIT
  • 模糊查询-- LIKE
  • 通配符 _
  • 别名---AS
  • union 与 union all
  • SELECT INTO
  • IFNULL
  • MID 函数用于从文本字段中提取字符。
  • ROUND 函数

说明:下面多是 # 符号,是因为小编在SQLyog编写语句 ,是此处的注释

数据表结构
CREATE TABLE test (
id VARCHAR (125),
name VARCHAR (125),
price DECIMAL (8,2),
created_time TIMESTAMP ,
updated_time TIMESTAMP
);
数据表内容
MySql-常用函数_第1张图片

查找某表 以创建时间降序排序的前三位数据-- LIMIT

SELECT * FROM test ORDER BY created_time DESC LIMIT 3
结果MySql-常用函数_第2张图片

模糊查询-- LIKE

SELECT * FROM test WHERE NOT NAME LIKE ‘%y%’; ## 不包含 y 的数据
SELECT * FROM test WHERE NAME LIKE ‘%y%’; ##包含 y 的数据
SELECT * FROM test WHERE NAME LIKE ‘%y’; ##以 y 结尾的数据
SELECT * FROM test WHERE NAME LIKE ‘y%’; ##以 y 开头的数据

通配符 _

**注意:**此处的符号 ‘’ ,是输入法的英文格式,的单引号
此处的 通配符是 下划线 _
只会查出唯一值

  • SELECT * FROM test WHERE NAME LIKE ‘_angL’;
    结果
  • SELECT * FROM test WHERE NAME LIKE ‘__angJM’;
    结果

别名—AS

SELECT NAME AS NAMES FROM test ;

MySql-常用函数_第3张图片
用处:当,数据库表字段名 与 Java实体类返回值(VO) 字段名不一致时,可以通过 AS 将返回值取得相同

union 与 union all

union(不显示 两表中相同的数据 ) 与 union all(显示 两表中相同的数据 )

创建test1 数据库(与最前面结构一致)

表数据
在这里插入图片描述

  • SELECT t.name FROM test t
    UNION
    SELECT t1.name FROM test1 t1
    MySql-常用函数_第4张图片
  • SELECT t.name FROM test t
    UNION ALL
    SELECT t1.name FROM test1 t1

MySql-常用函数_第5张图片

SELECT INTO

语句可用于创建表的备份复件。  

SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。
SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。

您可以把所有的列插入新表:

SELECT *
INTO new_table_name [IN externaldatabase]
FROM old_tablename

或者只把希望的列插入新表:

SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_tablename

IFNULL

与 Oracle的NVL() 函数相似      
下面,如果说  test中的 name列  是null  那么,返回0   不然,照常返回
SELECT IFNULL(name,'0') FROM test;

MID 函数用于从文本字段中提取字符。

 语法: SELECT MID(column_name,start[,length]) FROM table_name
 说明:  column_name:必需。要提取字符的字段。  start: 必需。规定开始位置(起始值是 1)。  length:可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。

 SELECT MID(NAME,1,5) FROM test;# 查找test表 name字段 从1开始  到第5位结束
 SELECT MID(NAME,1) FROM test;  # 查找test表 name字段 从1开始 后面值,全部显示出来

ROUND 函数

用于把数值字段舍入为指定的小数位数。
语法说明:
SELECT ROUND(column_name,decimals) FROM table_name
column_name:必需。要舍入的字段。  decimals:必需。规定要返回的小数位数。
eg:
SELECT ROUND(price,1) FROM test;

MySql-时间处理,请点击此处查看
Java-后台Date时间处理,请点击此处查看
参考文献

你可能感兴趣的:(sql)