美文网首页
sqlite 函数

sqlite 函数

作者: 一江碎月 | 来源:发表于2017-12-06 21:38 被阅读0次

sql 中也有函数,函数可以作用在 SELECT 的任何部分。

以下的函数只在 sqlite 中验证过,别的 DBMS 自行验证。

字符串操作函数

  1. LTRIM,RTRIM 与 TRIM:分别用于去掉字符串左边、右边以及左右两边的空格。
SELECT "["||TRIM(name)||"]","["||name||"]" FROM em;

将返回的结果使用 [] 包裹起来,很容易看出 TRIM 的作用。

  1. LOWER,UPPER:将字符串转换成小写或大写。
SELECT LOWER(test),UPPER(test) FROM em 
    WHERE UPPER(test) LIKE '%XXX%';

这也表明函数可以用于任何位置 —— 不但出现在查询列,还出现在 WHERE 子句中。

  1. LENGTH:返回字符串的长度。
SELECT LENGTH(test) FROM em;
  1. substr(X,Y[,Z]):截取字符串 X 的子串,各参数含义如下:

    • X 截取的列名,Y 表示截取开始的位置,Z 指截取的长度。

    • 字符串的下标从 1 开始,-1 表示字符串的最后一个字符。

    • 如果 Z 省略,就是从 Y 开始直到字符串末尾

    • 如果 Z 为正数,则从 Y 开始(含)往右数 Z 个字符或直到字符串末尾

    • 若 Z 为数,则从 Y 开始(不含)往左数 Z 的绝对值个字符。如:

SELECT area AS area, 
    SUBSTR(area,2,-1) , SUBSTR(area,-2), 
    SUBSTR(area,-3,-2), SUBSTR(area,2,2) 
FROM animals

结果为

substr

数学函数

ABS(), TAN() , SIN() , COS():数学运算函数。


统计函数

对某些行进行计算,并返回一个结果的函数。常用的有 COUNT, MIN, MAX, AVG, SUM

  1. 确定表中的行数( 或满足某个条件的行的行数 )—— COUNT函数

  2. 求某些行的和 —— SUM函数

  3. 求某列( 或是所有行或是满足某些条件的行 )的最大、最小、平均值 —— MAX,MIN,AVG函数。

SELECT AVG(size), COUNT(size), SUM(size), MAX(size), MIN(size) 
          FROM animals WHERE name LIKE "%O%";

其求取 name 中有字母 O 的所有行的 size 的平均值,行数,总和,最大值与最小值。

  1. 这些函数只能用于汇总,并不能用于 WHERE 判断 —— 因为它本身就是求取满足一定条件的行的一些值。

COUNT

  1. COUNT(*):对表中的行的数目进行计数,不忽略 null 值。

  2. COUNT(column):对某个具体列的行进行计数,忽略值为 null 的行。

select count(schoolId) from em

该语句就相当于统计 em 表中 schoolId 值不为 null 的行数。

MAX与MIN

返回指定列中的最大值与最小值,会忽略 NULL 。

SUM

返回指定列值之和。也可以用来合计计算值。

SELECT SUM(weight+size) FROM animals

SUM参数中是两列的计算值,并不是一个单独的列——也可以使用单独的列。


DISTINCT 与 ALL

DISTINCT 表示只汇总不同的值,ALL 表示汇总所有的值。其中 ALL 是默认值。

  1. 上述几个函数都可以在参数中传入 DISTINCT 或 ALL。
SELECT AVG(size), AVG(DISTINCT size) FROM animals

假设 size 值分别为 (2,10,30,40,5,2) ,前者的值是 14.83 = 89/6,后者是 17.4 = 87/5—— 因为有两个 2,DINTINCT会将其中一个2给排除。

  1. COUNT 与 DISTINCT 连用时,只能用于 COUNT(column),不能用于 COUNT(*)

  2. 在技术上 DISTINCT 与 MAX/MIN 可以连用,但没有任何意义。

相关文章

  • iOS开发-SQLite函数以及SQLite语句分享

    SQLite函数 SQLite语句

  • SQLite 常用函数

    SQLite 常用函数 SQLite 有许多内置函数用于处理字符串或数字数据。下面列出了一些有用的 SQLite ...

  • SQLite常用函数

    SQLite 内置函数,所有函数不区分大小写1,SQLite COUNT函数聚集函数是用来计算一个数据库表中的行数...

  • sqlite 函数

    sql 中也有函数,函数可以作用在 SELECT 的任何部分。 以下的函数只在 sqlite 中验证过,别的 DB...

  • SQLite 常用函数

    SQLite 有许多内置函数用于处理字符串或数字数据。下面列出了一些有用的 SQLite 内置函数,且所有函数都是...

  • 「SQLite学习笔记」常用函数

    SQLite 有许多内置函数用于处理字符串或数字数据。下面列出了一些有用的 SQLite 内置函数,且所有函数都是...

  • SQLite 日期 & 时间

    SQLite 日期 & 时间 SQLite 支持以下五个日期和时间函数: 上述五个日期和时间函数把时间字符串作为参...

  • 数据库SQLite以及FMDB的使用

    SQLite函数总结 1.打开数据库 int sqlite3_open( const char *filename...

  • iOS数据存储之Sqlite3封装

    Sqlite3的函数介绍 SQL语句介绍 SQL自学网址:http://www.yiibai.com/sqlite...

  • iOS SQlite3 常用命令

    使用的过程根据使用的函数大致分为如下几个过程: sqlite3_open() sqlite3_prepare() ...

网友评论

      本文标题:sqlite 函数

      本文链接:https://www.haomeiwen.com/subject/nzzlixtx.html