sql次级语句

select upper(n_id) from nrc_news;
select left(n_content,1) from nrc_news;
select len(n_content) from nrc_news;

left() 返回字符串左边的字符
len() 返回字符串的长度
lower() 转换小写
right() 返回字符串右边的字符
soundex() 返回字符串的SOUNDEX值
upper() 转换大写

select n_content from nrc_news where DATEPART(YY,n_publishtime)=2015;
select n_content from nrc_news where DATEPART(YYYY,n_publishtime)=2015;
数值处理函数:
abs() 返回一个数的绝对值
cos() 返回一个角度的余弦
exp() 返回一个数的指数值
pi() 返回圆周率
sin() 返回一个数的正弦
sqrt() 返回一个数的平方根
tan() 返回一个数的正切

select ABS(n_id) from nrc_news;
select cos(n_id) from nrc_news;
select exp(n_id) from nrc_news;
select pi() from nrc_news;
select SIN(n_id) from nrc_news;
select sqrt(n_id) from nrc_news;
select tan(n_id) from nrc_news;

汇总数据
AVG() 返回某列的平均值
COUNT() 返回某列的行数
MAX() 返回某列的最大值
MIN() 返回某列的最小值
SUM() 返回某列之和
select avg(t_id) from nrc_news;
select count(t_id) from nrc_news;
select max(t_id) from nrc_news;
select min(t_id) from nrc_news;
select sum(t_id) from nrc_news;
注:
avg()只能用来确定特定数值列的平均值,而且列明必须作为函数参数给出,如果要获得多个列的平均值,必须用多个avg()
avg()函数忽略列值为NULL的行

select count(*) from nrc_news where t_id=10;

数据分组
select t_id,count(*)as number from nrc_news group by t_id;
注解:
上面的SELECT语句制定了两个列,t_id和number(计算字段).group by 子句会指示数据库按t_id排序并分组数据.这样会对每个t_id而不是整个表计算number
这样输出的就是每个t_id所对应的行的数量

select t_id,count(*)as number from nrc_news group by t_id having COUNT(*)>=2;
注:
HAVING 和 WHERE 的差别
where是在数据分组前进行过滤,having是在数据分组后进行过滤
共同使用的时候,where排除的值不包括在分组中,会影响having的计算

使用子查询
select * from nrc_news where t_id in(1,2);
select t_id from nrc_news where n_content like ‘%就%‘;

select * from nrc_news where t_id in(select t_id from nrc_news where n_content like ‘%就%‘);
注:
作为子查询的select语句只能查询单个列,企图检索多个列将返回错误
select r_id,r_content,n_id,(select t_id from nrc_news where nrc_news.n_id=nrc_review.n_id)as orders from nrc_review ;
select n_id,n_title,t_id,(select t_memo from nrc_type where nrc_type.t_id=nrc_news.t_id)as t_memo from nrc_news
上述子查询为重点内容。重点记忆。
select top 10 n_id as id,
(select n_title from nrc_news where nrc_news.n_id=nrc_review.n_id)as title,
(select n_content from nrc_news where nrc_news.n_id=nrc_review.n_id)as content,
(select t_id from nrc_news where nrc_news.n_id=nrc_review.n_id)as t_id,
(select n_publishtime from nrc_news where nrc_news.n_id=nrc_review.n_id)as publishtime,
COUNT(*)as number from nrc_review group by n_id order by number desc,id;

时间: 2024-08-05 23:33:25

sql次级语句的相关文章

Hibernate 关于执行sql查询语句(转)

原文  http://www.yshjava.cn/post/543.html 主题 SQLHibernate Hibernate对原生SQL查询的支持和控制是通过SQLQuery接口实现的.通过Session接口,我们能够很方便的创建一个SQLQuery(SQLQuery是一个接口,在Hibernate4.2.2之前,默认返回的是SQLQuery的实现类--SQLQueryImpl对象,在下文中出现的SQLQuery如非注明,都是指该子类)对象来进行原生SQL查询: session.creat

Oracle 基本SQL SELECT语句

SELECT  *  |    {   [ DISTINCT  ]    column   |    expression   [   alias   ]  ,   ...    } FROM  table; ?SELECT  标识 选择哪些列. ?FROM    标识从哪个表中选择. column后面加上空格,同时跟上别名(alias),或者 as 别名,到下一行的内容时,要用逗号隔开, 默认的别名是小写的,如果想要让它是大写的,使用 "别名" 如果别名有多个单词的时候,用双引号别名

Sql去重语句

海量数据(百万以上),其中有些全部字段都相同,有些部分字段相同,怎样高效去除重复? 如果要删除手机(mobilePhone),电话(officePhone),邮件(email)同时都相同的数据,以前一直使用这条语句进行去重: 1 delete from 表 where id not in 2 (select max(id) from 表 group by mobilePhone,officePhone,email ) 3 or 4 delete from 表 where id not in 5

SQL join语句

——转载 假设我们有下面两张表.表A在左边,表B在右边.我们给它们各四条记录. 1 2 3 4 5 6 id name       id  name -- ----       --  ---- 1  Pirate     1   Rutabaga 2  Monkey     2   Pirate 3  Ninja      3   Darth Vader 4  Spaghetti  4   Ninja 我们用过name字段用几种不同方式把这些表联合起来,看能否得到和那些漂亮的韦恩图在概念上的匹

图解MYSQL JOIN ON,SQL JOIN 详解,数据库sql join语句

对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams 解释了SQL的Join.我觉得清楚易懂,转过来. 假设我们有两张表. Table A 是左边的表. Table B 是右边的表. 其各有四条记录,其中有两条记录是相同的,如下所示

SQL 常用语句

–-表现最差的前10名使用查询 SELECT TOP 10 ProcedureName = t.text, ExecutionCount = s.execution_count, AvgExecutionTime = isnull ( s.total_elapsed_time / s.execution_count, 0 ), AvgWorkerTime = s.total_worker_time / s.execution_count, TotalWorkerTime = s.total_wo

Sql Server 语句随笔

例1 对于两个或更多的销售员的销售点,计算其中所有销售员的总销售目标值和销售员金额. select city,sum(QUOTA),sum(SALESREPS.SALES) from OFFICE,SALESREPS group by CITY having count(*)>=2 例2 (1) 单行insert语句 单行insert语句用于向一关系表中添加一行新数据.其使用格式如下: insert into <表名> (列名列表) values (列值列表) (2) 多行insert语

SQL判断语句

select decode(tts.is_lock,0,'false',1,decode(tts.execute_state,4,'false','true')) from twf_tech_schedule tts sql判断语句

SQL SELECT 语句

SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL SELECT 语法 SELECT 列名称 FROM 表名称 以及: SELECT * FROM 表名称 注释:SQL 语句对大小写不敏感.SELECT 等效于 select. SQL SELECT 实例 如需获取名为 "LastName" 和 "FirstName" 的列的内容(从名为 "Persons" 的数据库表),请使用类似