sql数据经典例子
来源:互联网 发布:Windows命令删除文件夹 编辑:程序博客网 时间:2024/05/16 11:03
1.database:常用函数
如:select 函数(属性)from 表名
数学函数:
ABS(X) 返回X的绝对值
max(x) 返回X的最大值
avg(x) 返回X的平均值
min(x) 返回X的最小值
sum(x)返回X的和
count(x)返回X的表记录数量
重点上:常用:
PI() 返回圆周率,默认显示小数点后6位
SQRT(X) 返回X的平方根
MOD(X, Y) 返回X被Y除后的余数
CEIL(X) 返回不小于X的最小整数值
CEILING(X) 返回不小于X的最小整数值
FLOOR(X) 返回不大于X的最大整数值
RAND() 产生随机数
RAND(X) 产生随机数,若X参数相同,多次执行,产生的随机数相同
ROUND(X) 返回对X进行四舍五入操作后的整数值
ROUND(X, Y) 对X进行四舍五入操作,其值保留到小数点后Y位,若Y为负,则保留到小数点左边Y位
SIGN(X) 返回X的符号,负则返回-1,零则返回0,正则返回1
POW(X, Y) 返回X的Y次幂
POWER(X, Y) 返回X的Y次幂
EXP(X) 返回e的X次幂
LOG(X) 返回X的自然对数
LOG10(X) 返回X的基数为10的对数
RADIANS(X) 角度转化为弧度
DEGREES(X) 弧度转化为角度
SIN(X) 正弦函数
ASIN(X) 正弦函数的反函数
COS(X) 余弦函数
ACOS(X) 余弦函数的反函数
TAN(X) 正切函数
ATAN(X) 正切函数的反函数
COT(X) 余切函数
字符串函数:
LOWER(str) 大写字母转为小写
LCASE(str) 大写字母转为小写
UPPER(str) 小写字母转为大写
UCASE(str) 小写字母转为大写
CHAR_LENGTH(str) 计算字符串str的字符个数
CONCAT(s1, s2, …) 拼接s1, s2, …
CONCAT_WS(x, s1, s2, …) 使用分隔符x将s1, s2, …拼接起来
STRCMP(s1, s2) 字符串比较
SUBSTRING(s, n, len)或substr(s, n, len) 返回字符串s中从n开始长度为len的子串
重点上:常用:
INSERT(s1, x, len, s2) 返回字符串s1,其子字符串起始于x位置和被字符串s2取代的len字符
LEFT(s, n) 返回字符串s左边n个字符组成的子串
RIGHT(s, n) 返回字符串s右边n个字符组成的子串
LPAD(s1, len, s2) 返回字符串s1,其左边被字符串s2填补至len字符长度
RPAD(s1, len, s2) 返回字符串s1,其右边被字符串s2填补至len字符长度
LTRIM(s) 删除字符串s左端的空格
RTRIM(s) 删除字符串s右端的空格
TRIM(s) 删除字符串s两端的空格
TRIM(s1 FROM s) 删除字符串s中两端所有的字串s1,未指定s1时默认为空格
REPEEAT(s, n) 返回n个字符串s拼接成的字符串
SPACE(n) 返回一个由n个空格组成的字符串
REPLACE(s, s1, s2) 使用字符串s2替换s中所有的s1
MID(s, n, len) 返回字符串s中从n开始长度为len的子串
LOCATE(str1, str) 返回str1在字符串str中的位置
POSITION(str1 IN str) 返回str1在字符串str中的位置
INSTR(str, str1) 返回str1在字符串str中的位置
REVERSE(s) 返回反转后的字符串
ELT(n, s1, s2, …) 返回s1, s2, …中第n个字符串
FIELD(s, s1, s2, …) 返回字符串s在s1, s2, …中所在的位置
FIND_IN_SET(s1, s2) 返回字符串s1在字符串列表s2中的位置
MAKE_SET(x, s1, s2, …) 返回由x的二进制数指定的相应位的字符串组成的字符串
3.分组函数:函数如:max(),avg(),min(),sum()......
Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”。
它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理
句型:select 属性1,函数(属性)from 表名 group by 属性1
SELECT deptno ,JOB,SUBSTR(ENAME,2,5),MAX(SAL) FROM emp GROUP BY deptno,JOB
SELECT deptno, MGR,JOB,SUBSTR(ENAME,2,5),MAX(SAL) FROM emp GROUP BY deptno HAVING AVG(MGR)>7800
SELECT deptno, MGR,JOB,SUBSTR(ENAME,2,5),MAX(SAL) FROM emp GROUP BY deptno ,JOB HAVING AVG(MGR)>7800
子查询:查出来是一张表(临时的)
SELECT *FROM emp WHERE SAl>(SELECT AVG(SAL)FROM emp)GROUP BY SAL证明子查询是一张表(必须取别名,不然会出错)
SELECT * FROM (SELECT *FROM emp)AS d
句型: SELECT * FROM 表名 WHERE 属性1 IN(SELECT 属性1 FROM emp WHERE 属性2=800 OR 属性2=5000)
SELECT * FROM emp WHERE SAL IN(SELECT SAL FROM emp WHERE SAL=800 OR SAL=5000)
连表查询:
SELECT e.*,d.loc FROM emp e,dept d WHERE d.deptno=e.deptnoSELECT e.*,d.loc FROM emp e,dept d WHERE d.deptno>20 AND e.COMM>300
join连表查询(一般现在大家用的都是这个)ringt,inner ,on+条件
SELECT e.*,d.loc FROM emp e INNER JOIN dept d ON d.deptno>20
limit:一般用于分页的条件
SELECT * FROM emp LIMIT 5,8
阅读全文
0 0
- sql数据经典例子
- SQL语句经典例子
- SQL经典例子
- sql注入经典例子
- sql优化经典例子
- sql-经典例子练习
- SQL语句使用经典例子
- SQL语句使用经典例子
- SQL行转列经典例子(转载)
- SQL语句使用经典例子
- SQL语句使用经典例子
- SQL数据开发-经典
- sql server 事务编程经典例子
- 数据库SQL查询的经典例子
- linux下处理数据经典例子
- Activity传递数据的经典例子
- 经典SQL之数据统计
- 数据开发-经典sql语句
- 二进制
- 结构体struct字对齐问题
- HTTPS建立连接的过程
- git push origin与git push -u origin master的区别
- VI命令整理
- sql数据经典例子
- iOS网络串行队列之图片上传
- 涂鸦移动二面
- bzoj3566(106/600)
- 帆软加密狗注册配置安装步骤
- widows redis主从复制
- 上传文件并提交svn
- Python的json模块包
- Vim