❶ sql语句求出现次数最多的十个人名,我把我分都给你。
这里使用临时表table1,操作结束删除了,如果有更好的方法建议不这样,浪费系统资源,能帮的只有这些了!
go
select substring(name,1,cast(len(name)as int)) as name,count(*)as 出现次数 into table1
from 表名
group by substring(name,1,cast(len(name)as int))
order by count(*) asc
go
select top 10 *
from table1
go
drop table table1
go
程序没有问题,试过了,把中间的“表名”改一下就可以用了,看好变量!
❷ 求大师帮忙sql语句怎么写!!表如图!!急!!谢谢 Q:查询工资前30%的职工,性别,职称,工资。
select top 30 percent 姓名,性滚升别,职大携老称,工资隐纯 from tableName
order by 工资 desc
❸ 大神,求助!!!!SQL的问题。Sqlserver,如何只取记录前10的数据,并且把其他数据的值求和成一条记录
你可以先根据值得大小进行降序排序,在添加row_number来多出序号一列,然后取前10 的序号值,最后用UNION将两条语句结果合并。请参考下列code:
declare@ttable
(namevarchar(1),valueint)
insertinto@tvalues
('A',15),
('B',10),
('C',20),
('D',5),
('E',7);
;WITHCteAS
(
SELECT*,ROW_NUMBER()OVER(ORDERBYVALUEdesc)RNFROM@T
)
SELECTname,valueFROMCTEWHERERN<=3
UNIONALL
SELECT'Others',sum(value)fromctewherern>3
❹ 查询数据库中前十条不重复的用户信息,只取姓名和性别
select name sex from piva_orders a,piva_orders b where a.name!=b.name limit 10;
朋庆念友,这誉衡困拦察样试试。
❺ SQL查询统计某表的男女各个人数
select s.sex,count(s.sex) from student s GROUP BY sex;
GROUP BY 语句
GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
测试student表纪录如下图,根据自己需求增删字段。
student s ,s是自己为student表定义的别名,count()为统计的人数。
拓展资料:
SQL GROUP BY 语法:
SELECT column_name(列名), aggregate_function(column_name) (函数名) FROM table_name(表名) WHERE column_name operator value GROUP BY column_name
❻ 求一条SQL语句:能计算各科前10名学生的平均成绩的方法
select avg(语文) as 语文平均成绩 from (select top 10 * from 成绩表 order by 语文 desc)
select avg(数学) as 数学平银缓虚均成哪败绩 from (select top 10 * from 成绩表 order by 数学 desc)
select avg(英语锋燃) as 英语平均成绩 from (select top 10 * from 成绩表 order by 英语 desc)
❼ 用SQL语句如何求出一列最大的10个值
顶4楼,分析的很对,2、3楼的说法的确是sqlserver的写法。
附例子:
在ORACLE中实现SELECT
TOP
N
由于ORACLE不支持SELECT
TOP语句,所以在ORACLE中经常是用ORDER
BY跟ROWNUM的组合来实现SELECT
TOP
N的查询。
简单地说,实现方法如下所示:
SELECT
列名1...列名n
FROM
(SELECT
列名1...列名n
FROM
表名
ORDER
BY
列名1...列名n)
WHERE
ROWNUM
<=
N(抽出记录数)
ORDER
BY
ROWNUM
ASC
下面举个例子简单说明一下。
顾客表customer(id,name)有如下数据:
ID
NAME
01
first
02
Second
03
third
04
forth
05
fifth
06
sixth
07
seventh
08
eighth
09
ninth
10
tenth
11
last
则按NAME的字母顺抽出前三个顾客的SQL语句如下所示:
SELECT
*
FROM
(SELECT
*
FROM
CUSTOMER
ORDER
BY
NAME)
WHERE
ROWNUM
<=
3
ORDER
BY
ROWNUM
ASC
输出结果为:
ID
NAME
08
eighth
05
fifth
01
first
❽ 周排行前十名的sql语句怎么写谢谢
--假设星期天是一周的开始
--我这里假设是求上周的,其它的稍改一点
declare @dt int
declare @date datetime
set @dt=datepart(weekday,getdate()) --取今天的星期数
set @date=dateadd(day,-@dt+1,getdate()) --求一周的开始一天
select top(10) * from table_1
where date_column between @date and getdate()
order by [……] desc
❾ 在查询中按照性别排序,在sql语句中使用
sql 排序语句为 order by 字段名 asc/desc
例如:需要升序则 order by 性别
降序排则是 order by 性别 desc ,其实如果是性别的话降序升序应该没什么区别。你试试吧~
❿ 各位大神,oracle里使用sql获取不同地区姓王的男员工的信息,并且按照薪资倒序排序,取前10条,怎么写啊
下次宴尺尽量晌禅高把表结构发出来,要不怎么写SQL,另外问题的意思是不同地区分别的最高10条?
SELECT*FROM(
SELECTA.*,ROWUMBER()OVER(PARTITIONBY地区ORDERBY工资DESC)ASFNUMFROM表名AWHERE性别='男'AND姓名LIKE'王%')TWHEREFNUM袭锋<=10