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语句, ...
随机推荐
- 学习 C++的用途,(前辈总结)
C++准确说是一门中级语言,介于汇编和高级语言之间吧,要求程序员了解计算机的内部数据存储.个人认为,作为学生还是花功夫学C++,因为<设计模式><数据结构>这些课程基本上还是C ...
- Java学习遇到的问题
一. Java中泛型如何比较大小,继承Comparable类,然后实现其唯一的方法compareTo(): public class GenericClass<E extends Compara ...
- DevExpress 常用命令包括导出-打印-打印预览等
3.表格打印也是最常见的,打印代码如下: PrintingSystem ps = null; DevExpress.XtraPrinting.PrintableComponentLink link = ...
- 【洛谷 P2147】 [SDOI2008]洞穴勘测(LCT)
题目链接 LCT裸题.. #include <cstdio> #define R register int #define I inline void #define lc c[x][0] ...
- CMDB概述(二)
运维自动化路线: cmdb的开发需要包含三部分功能: ·采集硬件数据 ·API ·页面管理 执行流程:服务器的客户端采集硬件数据,然后将硬件信息发送到API,API负责将获取到的数据保存到数据库中, ...
- c语言学习笔记.指针.
指针: 一个变量,其值为另一个变量的地址,即,内存位置的直接地址. 声明: int *ptr; /* 一个整型的指针,指针指向的类型是整型 */ double *ptr; /* 一个 double 型 ...
- Three.js基础探寻五——正二十面体、圆环面等
除了立方体.平面.球体,Three.js还提供了很多其他几何形状. 1.圆形 CircleGeometry可以创建圆形或者扇形: THREE.CircleGeometry(radius, segmen ...
- s3c6410下移植sqlite3.7.8
http://blog.chinaunix.NET/uid-30441-id-2133838.html 1.下载源代码http://www.sqlite.org/download.html 2.tar ...
- linux设备驱动模型-浅析-转
1. typeof typeof并非ISO C的关键字,而是gcc对C的一个扩展.typeof是一个关键字(类似sizeof),用于获取一个表达式的类型. 举个简单的例子: char tt; typ ...
- sicily 1193. Up the Stairs
Time Limit: 1sec Memory Limit:32MB Description John is moving to the penthouse of a tall sky-scr ...