SQL2:数据操作
1.数据插入:
1)插入表中:
INSERT INTO TABLE_NAME VALUE('value1','value2',....);
2)从另一个表中插入数据:
INSERT INTO TABLE_NAME [('column1','column2',....)] SELECT [*/('column1','column2',....)] FROM TABLE_NAME [where condition];
3)插入空值NULL:
必须在对应的列插入
2.更新数据:
UPDATE TABLE_NAME SET CULUMN_NAME='value' [where condition];
3.删除数据:
DELETE FROM TABLE_NAME [where condition];
4.事务管理:
1)COMMIT:
用于把事务所做的修改保存到数据库,COMMIT提交上一个COMMIT或ROLLBACK之后的所有事务。
2)ROLLBACK:
用于撤销还没有保存到数据库中的数据库命令,上一个COMMIT或ROLLBACK之后的事务。
3)SAVAPOINT:
保存点是事务过程中的一个逻辑点,可以把事务回退到这个点而不必回退整个事务。 SAVAPOINT savapoint_name; ROLLBACK TO savapoint_name 回退到保存点。
4)RELEASE SAVEPOINT:
用于删除创建的保存点,RELEASE SAVEPOINT savapoint_name;
5)SET TRANSACTION:
用于初始化数据库事务,可以指定事务特性,SET TRANSACTION WRITE READ; SET TRANSACTION READ ONLY;
5.数据查询:
1)SELECT [* /ALL/DISTINCT COLUMN1,COLUMN2] FROM TABLE1 /TABLE2..;
2)SELECT [* /ALL/DISTINCT COLUMN1,COLUMN2] FROM TABLE1 /[TABLE2,...]
WHERE [condition1|expression1][and/or condition2|expression];
3)SELECT [* /ALL/DISTINCT COLUMN1,COLUMN2] FROM TABLE1 /[TABLE2,...]
WHERE [condition1|expression1][and/or condition2|expression]
GROUP BY COLUMN1|INTEGER [ASC|DESC];
4)SELECT COUNT(*) FROM table_name;统计表里的记录数
5)SELECT COLUMN FROM USER2.TABLE_NAME;从别的表里获取数据
6)SELECT CULUMN_NAME ALIAS_NAME FROM TABLE_NAME;使用别名
7)其他:
ORDER BY :对查询得到的数据进行排序,GROUP BY 对查询得到的数据进行排序进行适当的分组。
CUBE 和 ROLLUP :对分组数据进行小计,经常和GROUP BY一起使用
HAVING:SELECT FROM GROUP BY HAVING ORDER BY
6.SQL操作符:和WHERE配合使用
1)比较:
=(等于) ,<> (不等于) ,<(小于) , > (大于) ,<=,>=
2)逻辑:
IS NULL , BETWEEN , IN, LIKE(% 或 _) , EXISTS(condition), UNIQUE , ALL , ANY
3)求反:NOT
<> ,!(NOT EQUAL) , NOT BETWEEN , NOT IN , NOT LIKE , NOT EXIST , NOT UNIQUE , IS NOT NULL
4)算术:
+ , - , * , /
5)连接:
AND , OR
7.汇总函数:
1)COUNT:统计不为NULL的记录或字段
2)SUM:返回一组记录中某一个字段值的总和
3)MAX:返回一组记录中某一个字段值的最大值
4)MIN:返回一组记录中某一个字段值的最小值
5)AVG :返回一组记录中某一个字段值的平均值
8.常用字符函数:
1)TRANSLATE:搜索字符串里的字符并查找特定的字符,标记找到的位置,替换对应的字符。
TRANSLATE(character set,from_str,to_str)
2)REPLACE:把某个字符或字符串替换成指定字符
3)UPPER:把字符串中的小写改写成大写
UPPER(character set)
4)LOWER:把字符串中的大写改写成小写
LOWER(character set)
5)SUBSTR:获取字符串中的子串
SUBSTR(COLUMNNAME,START,LENGTH)
6)INSTR:在字符串中找指定字符
INSTR(COLUMNNAME,'SET',...)
7)LTRIM:剪除字符串左侧
LTRIM(character set)
8)RTRIM:剪除字符串右侧
RTRIM(character set)
9)LENGTH:用于获得值的长度,单位为字节
LENGTH(character set)
10)IFNULL:如果为空用指定值替代NULL
IFNULL('value','substitution')
11)COALESCE:用指定值替代NULL
12)LPAD:在字符串左侧添加字符或空格
LPAD(character set)
13)RPAD:在字符串右侧添加字符或空格
RPAD(character set)
14)ASCII:返回ASCII码
ASCII(character set)
9.算术函数:
1)ABS:绝对值
2)ROUND:舍入
3)SQRT:平方根
4)SIGN:符号
5)POWER:幂
6)CEIL/FLOOR:上下限
7)EXP:指数
8)SIN/COS/TAN:三角函数
FUN(expression)
SQL2:数据操作的更多相关文章
- StackExchange.Redis帮助类解决方案RedisRepository封装(字符串类型数据操作)
本文版权归博客园和作者本人共同所有,转载和爬虫请注明原文链接 http://www.cnblogs.com/tdws/tag/NoSql/ 目录 一.基础配置封装 二.String字符串类型数据操作封 ...
- hive数据操作
mdl是数据操作类的语言,包括向数据表加载文件,写查询结果等操作 hive有四种导入数据的方式 >从本地加载数据 LOAD DATA LOCAL INPATH './examples/files ...
- Dapper 数据操作框架
数据操作DapperFrom NuGet:Install-Package DapperorInstall-Package Dapper.StrongName微型ORM:PetaPoco获得PetaPo ...
- Django数据操作F和Q、model多对多操作、Django中间件、信号、读数据库里的数据实现分页
models.tb.objects.all().using('default'),根据using来指定在哪个库里查询,default是settings中配置的数据库的连接名称. 外话:django中引 ...
- coreData数据操作
// 1. 建立模型文件// 2. 建立CoreDataStack// 3. 设置AppDelegate 接着 // // CoreDataStack.swift // CoreDataStackDe ...
- Entity Framework 5.0系列之数据操作
Entity Framework将概念模型中定义的实体和关系映射到数据源,利用实体框架可以将数据源返回的数据具体化为对象:跟踪对象所做的更改:并发处理:将对象更改传播到数据源等.今天我们就一起讨论如何 ...
- 数据操作语言DML与运算符
数据操作语言DML(添加,修改,删除) 1.添加数据 insert into insert into 表名 (字段列表) values (值列表),值列表要和字段列表按顺序匹配. insert int ...
- SQL不同服务器数据库之间的数据操作整理(完整版)
---------------------------------------------------------------------------------- -- Author : htl25 ...
- C#利用SqlDataAdapte对DataTable进行批量数据操作
C#利用SqlDataAdapte对DataTable进行批量数据操作,可以让我们大大简化操作数据的代码量,我们几乎不需要循环和不关心用户到底是新增还是修改,更不用编写新增和修改以及删除的SQL语句, ...
随机推荐
- ubuntu环境下添加中文输入法
1.下载软件包 打开终端,输入命令 sudo apt-get install fcitx-table-wbpy 2.打开 system settings-> language support-& ...
- Mybatis多参数及实体对象传递
在使用Mybatis的时候,经常会有各种各样的参数传递,不同类型,不同个数的参数. 先上个例子: public List<LifetouchRelease> findOfficeL ...
- ACM-ICPC2018 青岛赛区网络预赛-B- Red Black Tree
题目描述 BaoBao has just found a rooted tree with n vertices and (n-1) weighted edges in his backyard. A ...
- Dubbo 管理控制台安装
Dubbo 管理控制台官网下载 https://github.com/alibaba/dubbo Dubbo 管控台可以对注册到 zookeeper 注册中心的服务或服务消费者进行管理,而且管控台是 ...
- display:inline-block之用法
HTML的元素有多种display属性,比较常见的有display:none; display:block; display:inline和display:inline-block;等.详细可参阅W3 ...
- Elasticsearch——QueryBuilder简单查询
elasticsearch中存储的全部文档 1.matchAllQuery() matchAllQuery()方法用来匹配全部文档 public class QueryTest { pub ...
- Vue.js入门系列教程(一)
基本的Vue代码结构 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> ...
- MySQL性能优化之道
1.in和not in子查询优化 not in 是不能命中索引的,所以以下子查询性能很低. 如果是确定且有限的集合时,可以使用.如 IN (0,1,2). 用 exists或 notexists代替 ...
- rxjs自定义operator
rxjs自定义operator
- 【BZOJ】4555: [Tjoi2016&Heoi2016]求和 排列组合+多项式求逆 或 斯特林数+NTT
[题意]给定n,求Σi=0~nΣj=1~i s(i,j)*2^j*j!,n<=10^5. [算法]生成函数+排列组合+多项式求逆 [题解]参考: [BZOJ4555][Tjoi2016& ...