博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【数据库】适用于SQLite的SQL语句(三)
阅读量:4262 次
发布时间:2019-05-26

本文共 1108 字,大约阅读时间需要 3 分钟。

目录

十七、重新引索REINDEX

REINDEX命令用于从头开始删除和重新创建索引。

十八、查询SELECT

1、简单查询

关键词:

FROM :数据源,后加表名或子查询WHERE:过滤GROUP BY:聚合查询,根据一个或多个列对结果集进行分组(合并行)HAVING:过滤,和WHERE类似,WHERE不能和合计函数一起使用,HAVING可以DISTINCT:去重
2、复合查询

在复合SELECT中,所有组成的SELECT必须返回相同数量的结果列。由于复合SELECT的组件必须是简单的SELECT语句,因此它们可能不包含ORDER BY或LIMIT子句。 ORDER BY和LIMIT子句只能在整个复合SELECT的末尾出现,然后仅在该复合词的最后一个元素不是VALUES子句时才出现。

关键词:

UNION	:UNION 操作符用于合并两个或多个 SELECT 语句的结果集。UNION ALL:和UNION类似,不同点是UNION返回的结果不包括重复值。INTERSECT:返回两个SELECT结果的交集。EXCEPT:返回第一个SELECT的结果,并剔除出现在第二个SELECT中的结果。注意:MySQL中没有EXCEPT

UNION用法,其它方法类似

SELECT column_name(s) FROM table_name1UNIONSELECT column_name(s) FROM table_name2

十九、更新UPDATE

如果UPDATE语句没有WHERE子句,则UPDATE修改表中的所有行。否则,UPDATE仅影响那些WHERE子句 布尔表达式为true的行。如果表中的任何行的WHERE子句都不为true,这不是错误-这仅意味着UPDATE语句影响零行。

二十、公用表表达式(CTE)WITH

1、普通表达式

格式:

WITH  name AS(	SQL语句)
2、递归表达式

格式:

WITH  RECURSIVEname AS(	SQL语句)

示例:使用SQL语句打印1到100

WITH RECURSIVE  cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<100)SELECT x FROM cnt;

二十三、VACUUM

VACUUM命令用于重建数据库文件,将其重新打包到最小的磁盘空间中。

VACUUM INTO 可以备份数据库。参见

二十四、UPSERT

UPSERT是INSERT特殊语法补充,它不是标准的SQL。和关键词"ON CONFLICT" 和 "DO"一起使用,来解决唯一性冲突。

转载地址:http://jdmei.baihongyu.com/

你可能感兴趣的文章
ASM 无法发现候选磁盘组----丢失的ASM磁盘组 ASM的磁盘组无法挂载
查看>>
Oracle 10g配置单向stream流复制,完整记录
查看>>
ORA-00845 MEMORY_TARGET not supported on this system
查看>>
ORA-00257: archiver error --11GR2 RAC 设置归档路径和开启flashback
查看>>
奕新集团项目--Oracle 源RAC ---目标 RAC GG 搭建 11.2.3 版本 双向同步
查看>>
What is SCAN in Oracle 11g R2 RAC
查看>>
关于Recycle Bin是什么以及实验
查看>>
Linux搭建时间同步服务器
查看>>
ORA-12541: TNS:no listener
查看>>
mysql数据库存储路径更改 数据文件位置
查看>>
Could not fetch specs from https://rubygems.org/
查看>>
oracle日志分析工具LogMiner使用
查看>>
使用 PDI 和 Oracle CDC 来实现Oracle 数据库向其他数据库的数据同步
查看>>
oracle数据库是否归档和修改归档模式
查看>>
Oracle内存参数调优技术详解
查看>>
浅谈增值业务及双向运营支撑平台
查看>>
JMS开发指南
查看>>
在linux上执行远程命令(ssh、ftp)
查看>>
四大数据库性能比较
查看>>
andoird wifi 点对点连接笔记本的ad-hoc
查看>>