SQL1-(增删改查、常用函数)
USE flowershopdb --全球唯一标识符(GUID UUID)
SELECT NEWID() --增删改查
--INSERT [INTO] <表名> [列名] VALUES <值列表>
INSERT tb_user VALUES('haha','')
INSERT INTO tb_user VALUES('gege','')
INSERT INTO tb_user(u_name,u_pass) VALUES('wawa','') --DELETE [FROM] <表名> [WHERE <删除条件>]
DELETE FROM tb_user --[清除该表中的全部数据]
DELETE tb_user
DELETE tb_user WHERE u_id=1
--Truncate Table <表名> [删除表数据,还原标识]
Truncate Table tb_user --UPDATE <表名> SET <列名 = 更新值> [WHERE <更新条件>]
UPDATE tb_user SET u_name='admin' --[修改该表中的全部数据]
UPDATE tb_user SET u_name='admin' WHERE u_id=1 --SELECT <列名> FROM <表名> [WHERE <检索条件>]
SELECT * FROM tb_user
SELECT u_id,u_name,u_pass FROM tb_user
SELECT u_id,u_name,u_pass FROM tb_user WHERE u_id=1 --检索不与任何表关联的数据
SELECT 1+1
SELECT GETDATE()
SELECT 'haha'
SELECT ASCII('a') --聚合函数
SELECT * FROM tb_product
SELECT COUNT(*),MAX(p_price),MIN(p_price),SUM(p_price),AVG(p_price) FROM tb_product --数据排序 ASC正序 DESC倒序
SELECT * FROM tb_product
ORDER BY p_id DESC --通配符过滤
--一个字符 '_'
SELECT * FROM tb_product
WHERE p_name LIKE '_玫瑰干花'
--任意长度的字符串 '%'
SELECT * FROM tb_product
WHERE p_name LIKE '%玫瑰%'
--括号中所指定范围内的一个字符 '[]'
SELECT * FROM tb_product
WHERE p_name LIKE '[玫瑰]%' --以 '玫'或'瑰'开头的花
--C Like '9W0[1-2]' 搜索 '9w01'或'9w02' --不在括号中所指定范围内的一个字符 '[^]'
SELECT * FROM tb_product
WHERE p_name LIKE '[^玫]%' --不以 '玫' 开头的花 --空值处理 IS NULL或IS NOT NULL
INSERT tb_user VALUES(null,null)
SELECT * FROM tb_user WHERE u_name IS NULL
SELECT * FROM tb_user WHERE u_name IS NOT NULL --多值匹配 IN或BETWEEN AND
SELECT * FROM tb_product WHERE p_price IN(2.1,2.2,2.3,2.4)
SELECT * FROM tb_product WHERE p_price=2.1 OR p_price=2.2 OR p_price=2.3 OR p_price=2.4 SELECT * FROM tb_product WHERE p_price BETWEEN 2.1 AND 2.9
SELECT * FROM tb_product WHERE p_price>=2.1 AND p_price<=2.9 --数据分组 GROUP BY
--WHERE子句从数据源中去掉不符合其搜索条件的数据
--GROUP BY子句搜集数据行到各个组中,统计函数为各个组计算统计值 --通过对d_id分组,然后计算分组后,各组数据和的平均值
SELECT d_id,AVG(p_price) AS 平均值 FROM tb_product
GROUP BY d_id --分组后查询语句 HAVING[对分组后的信息过滤]
SELECT d_id,AVG(p_price) AS 平均值 FROM tb_product
GROUP BY d_id
HAVING d_id > 2004 SELECT d_id,AVG(p_price) AS 平均值 FROM tb_product
GROUP BY d_id
HAVING AVG(p_price)>3 --限制结果集行数 TOP
SELECT TOP 5 * FROM tb_product --排名函数
--ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) --对 d_id分组,对p_price升序 排名产生新列 RID
SELECT ROW_NUMBER() OVER(PARTITION BY d_id ORDER BY p_price ASC) RID,d_id,p_price,p_name FROM tb_product
-- 先对d_id分组,然后对每组d_id进行p_price升序 --对 p_price升序 产生排名新列 RID
SELECT ROW_NUMBER() OVER(ORDER BY p_price ASC) RID,p_price,p_name FROM tb_product --去掉重复数据
SELECT DISTINCT * FROM tb_product --联合结果集 UNION
--基本的原则:每个结果集必须有相同的列数;每个结果集的列必须类型相容。
--tb_test c_id{int} c_name{varchar}
--tb_demo d_id{int} d_name{nchar} 类型相容
SELECT t_id,t_name FROM tb_test
UNION
SELECT d_id,d_name FROM tb_demo --UNION ALL
SELECT t_id,t_name FROM tb_test
UNION ALL
SELECT d_id,d_name FROM tb_demo --1.UNION合并两个查询结果集,并且将其中完全重复的数据行合并为一条
--2.Union因为要进行重复值扫描,所以效率低,因此如果不是确定要合并重复行,那么就用UNION ALL --数字函数
--ABS() :求绝对值。
--CEILING():舍入到最大整数 。3.33将被舍入为4、2.89将被舍入为3、-3.61将被舍入为-3。 Ceiling→天花板
--FLOOR():舍入到最小整数。3.33将被舍入为3、2.89将被舍入为2、-3.61将被舍入为-4。 Floor→地板。
--ROUND():四舍五入。舍入到“离我半径最近的数” 。Round→“半径”。Round(3.1425,2)。 SELECT ABS(-4.2)
SELECT CEILING(4.12)
SELECT FLOOR(6.89)
SELECT ROUND(4.5,0) --不要小数位
SELECT ROUND(4.5,1) --保留一位小数 --字符串函数
--LEN() :计算字符串长度
--LOWER() 、UPPER () :转小写、大写
--LTRIM():字符串左侧的空格去掉
--RTRIM () :字符串右侧的空格去掉 LTRIM(RTRIM(' bb '))
--SUBSTRING(string,start_position,length)
--参数string为主字符串,start_position为子字符串在主字符串中的起始位置,length为子字符串的最大长度。SELECT SUBSTRING('abcdef111',2,3)
--LEFT(string,数字) 截取左边
--RIGHT(string,数字)截取右边
SELECT LEN('') --返回指定字符串表达式的字符数
SELECT DATALENGTH('') --返回用于表示任何表达式的字节数。
SELECT LOWER('AbCd'),UPPER('AbCd')
SELECT LTRIM(' aa'),RTRIM('bb '),LTRIM(RTRIM(' cc '))
SELECT SUBSTRING('abcdefg',1,2) --start_position从1开始
SELECT LEFT('aabbcc',2) --从左边开始,截取两个字符串
SELECT RIGHT('aabbcc',2) --日期函数
--GETDATE() :取得当前日期时间
--DATEADD (datepart , number, date ),计算增加以后的日期。参数date为待计算的日期;参数number为增量;参数datepart为计量单位,可选值见备注。
--DATEADD(DAY, 3,date)为计算日期date3天后的日期,而DATEADD(MONTH ,-8,date)为计算日期date8个月之前的日期
--DATEDIFF ( datepart , startdate , enddate ) :计算两个日期之间的差额。 datepart 为计量单位,可取值参考DateAdd。
--DATEPART (datepart,date):返回一个日期的特定部分
SELECT GETDATE()
SELECT DATEADD(YEAR,3,'2014/10/02')
SELECT DATEADD(MONTH,3,'2014/10/02')
SELECT DATEADD(DAY,3,GETDATE())
SELECT DATEDIFF(YEAR,'1995/01/17',GETDATE())
SELECT DATEPART(YEAR,GETDATE()) --类型转换函数
--CAST ( expression AS data_type)
--CONVERT ( data_type, expression)
SELECT CAST('2014/10/11' AS DATETIME) --字符串转化为日期
SELECT CAST('' AS INT) --字符串转化为int
SELECT CAST(GETDATE() AS VARCHAR) --日期转化为字符串 SELECT CONVERT(DATETIME,'1995/01/17') --字符串转化为日期 SELECT CAST(right('aa1232011-08-09',10) AS DATETIME) --空值处理函数 ISNULL()
--ISNULL(expression,value) :如果expression不为空则返回expression,否则返回value
SELECT u_id,ISNULL(u_name,'佚名') FROM tb_user
SQL常用函数集锦:http://www.cnblogs.com/dreamof/archive/2009/02/02/1382487.html
SQL1-(增删改查、常用函数)的更多相关文章
- Mysql数据库基础增删改查常用语句命令
Mysql增删改查常用语句命令 一.增删改查语句总览 创建: create(创建数据库) 增:insert(插入表数据) 删:drop.delete(删除表.删除表数据) 改:update.alter ...
- HBase数据库增删改查常用命令操作
最近测试用到了Hbase数据库,新建一个学生表,对表进行增删改查操作,把常用命令贴出来分享给大家~ 官方API:https://hbase.apache.org/book.html#quickstar ...
- mongodb增删改查常用命令总结
前言 去年我还折腾过mongodb,后来用不到也就没碰了,这就导致了我忘的一干二净,不得不感叹,编程这东西只要不用,就会忘没了.现在我想重拾mongodb,来总结一下常用命令,主要就是增删改查. 另外 ...
- MySQL增删改查常用语句命令
增删改查语句增删改查的语句命令为 增:insert删:delete改:update查:SELECT或者show 库操作创建数据库:create database shujukuba;创建带字符集的数据 ...
- 004_Python的列表切片,增删改查,常用操作方法,元组,range,join
列表 列表是Python中的基础数据类型之一,它是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如: li = ['kevin',123,True,(1,2,3,'wusir'), ...
- YII框架增删改查常用语句
//实例化db $db = new \yii\db\Query(); //插入 $db->createCommand()->insert('user', [ 'name' => 't ...
- ASP.NET C# 连接 Oracle数据库增删改查,事务
一.知识介绍 ①ASP.NET 使用的是MVC模式,开发工具Visual studio ,语言C# ②Oracle是比较重型的数据库,这里主要介绍连接数据库,对数据进行具体的使用 ③Visual St ...
- ZooKeeper客户端 zkCli.sh 节点的增删改查
zkCli.sh 在 bin 目录下的 zkCli.sh 就是ZooKeeper客户端 ./zkCli.sh -timeout 5000 -server 127.0.0.1:2181 客户端与 ...
- Zookeeper入门(六)之zkCli.sh对节点的增删改查
参考地址为:https://www.cnblogs.com/sherrykid/p/5813148.html 1.连接 在 bin 目录下的 zkCli.sh 就是ZooKeeper客户端 ./z ...
- 增删改查(简单版&连接数据库)
这个博客也是补充之前的学习内容: 项目总述:这个增删改查我以,选课名称,选课教室,选课教师基本信息,作为主要的信息来源.主要对这些信息最基本的增删改查 详细的分析与说明: 1.首先在src文件里定义四 ...
随机推荐
- 《think in python》学习-1
高能提示:本文大量编程术语与释义,一些释义如有偏差恕不讨论. 纠结学Python 很久了,一年的纠结过程中慢慢的积累了一点对python的认知,但实际语法都未曾接触过,研究backbone的一个例子的 ...
- JS 精粹( 函数)
函数是对象,它与其它对象唯一的不同是它可以调用.函数可实现:代码复用.信息隐藏.代码组合调用. 建立函数时会建立:上下文.调用函数的代码.每个函数(除Function.prototype)都会有一个原 ...
- qrcode各版本/各类型容量支持表
1.qrcode共有40个版本,支持各种类型数据.个人一般统一转换成8位字节进行算法存储.(汉字 --uff8占用3个字节)
- 指针直接赋值为整型AND利用宏定义求结构体成员偏移量
首先我们要更正一个很熟悉的概念,那就是指针不仅仅是“地址”,指针还有一个很重要的特性,那就是“类型”. 指针初始化时,“=”的右操作数; 除外,该语句表示指针为空): 所以 ; 这样的代码是不允许的. ...
- php7 不向后的兼容的变更
php7 不向后的兼容的变更 在php7中,很多致命错误以及可恢复的致命错误,都被转换为异常来处理了. 这些异常继承自Error类,此类实现了Throwable接口(所有异常都实现了这个基础接口) 这 ...
- js实现表格
主要方法如下,然后今天学到了js的几个函数知识点. 1.eval()函数: 定义和用法eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码. 语法eval(string) 其 ...
- Android存储小结
转自:http://www.liaohuqiu.net/cn/posts/storage-in-android/ android系统自身自带有存储,另外也可以通过sd卡来扩充存储空间.前者好比pc中的 ...
- javascript 中字符串之比较
<script type="text/javascript"> var string1="apple"; var string2="Ban ...
- QT进度条QProgressBar的练习
progressbar.h #ifndef PROGRESSBAR_H #define PROGRESSBAR_H #include <QProgressBar> class QStrin ...
- PostCss 从0开始
PostCss 摘自 http://ju.outofmemory.cn/entry/215105 http://www.w3cplus.com/PostCSS/postcss-deep-dive-pr ...