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语句, ...
随机推荐
- Linux系统调用和库函数
#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unist ...
- JAVA多线程提高九:Semaphere同步工具
java 中Semaphere可类比操作系统信号量,硬件资源如IO.内存.磁盘等都是有固定量的,多个程序需要竞争这些资源,没有资源就需要被挂起. 一.类和方法摘要 构造函数: public Semap ...
- ② 设计模式的艺术-02.简单工厂(Simple Factory)模式
工厂模式 实现了创建者和调用者的分离. 详细分类:简单工厂模式.工厂方法模式.抽象工厂模式 面向对象设计的基本原则 OCP(开闭原则,Open-Closed Principle):一个软件的实体应当对 ...
- 开发技巧:高效的使用 Response.Redirect
我正在评估一个 ASP.NET Web 项目应用.它有一些可扩展性问题.意味着当网站访问量增加的时候.系统将会变得缓慢.当我查看应用日志.我找到了大量的 ThreadAbortException. 这 ...
- 【BZOJ】4766: 文艺计算姬
[题目]给定两边节点数为n和m的完全二分图,求生成树数取模给定的p.n,m,p<=10^18. [算法]生成树计数(矩阵树定理) [题解]参考自 [bzoj4766]文艺计算姬 by WerKe ...
- HBase笔记之远程Shell界面命令行无法删除字符的解决方案
方法一: 设置终端退格键为ASCII 127 在XShell的界面中,设置 文件 --> 属性 --> 终端 --> 键盘 --> BACKSPACE键序列,改为ASCII 1 ...
- 使用Bash时的几点总结
作为一个天天与Linux打交道,并以此为生的Linux运维工程师,最常用的工具性语言恐怕就是shell了, 而对于大多数的Linux和一些类Unix而言,其默认的shell就是Bash.使用Bash一 ...
- 191.Number of 1Bits---位运算---《剑指offer》10
题目链接:https://leetcode.com/problems/number-of-1-bits/description/ 题目大意:与338题类似,求解某个无符号32位整数的二进制表示的1的个 ...
- URAL题解一
URAL题解一 URAL 1002 题目描述:一种记住手机号的方法就是将字母与数字对应,如图.这样就可以只记住一些单词,而不用记住数字.给出一个数字串和n个单词,用最少的单词数来代替数字串,输出对应的 ...
- openjudge-NOI 2.6基本算法之动态规划 专题题解目录
1.1759 最长上升子序列 2.1768 最大子矩阵 3.1775 采药 4.1808 公共子序列 5.1944 吃糖果 6.1996 登山 7.2000 最长公共子上升序列 8.2718 移动路线 ...