SQL查询问题,请大家帮忙.
如果想把查询出来的队员姓名用一行的形式显示出来,单个语句实现不了,得利用循环,如游标来实现,例如:
declare @RegTeamList varchar(8000)
declare @teamname varchar(20)
declare cur1 cursor for
select regteamid from 队伍表 a,队员姓名表 b where a.队员id=b.队员ID
open cur1
fetch next from cur1 into @teamname
while @@fetch_status = 0
begin
if @regteamlist = ''
set @regteamlist = @teamname
else
set @regteamlist = @regteamlist + ',' + @teamname
fetch next from cur1 into @teamname
end
close cur1
deallocate cur1
select @regteamlist
这是随手写的,思路就是这样,你可以把这个写成过程或函数来调用,希望能对你有所帮助
由於2012-2-12这样的时间格式不是标准的格式,所以要转化标准了再做运算.
select * from tableA where ID=3 and
convert(varchar(10),cast(时间 as datetime),120)=convert(varchar(10),cast('2012-2-17' as datetime),120)
2.插入 可以这样
insert into tableA
select 7,时间,记录 from tableA where ID=3 and
convert(varchar(10),cast(时间 as datetime),120)=convert(varchar(10),cast('2012-2-17' as datetime),120)
然后对一组里面的数据进行集计。
比如说,要找出每个班一次考试的平均分。
这时候,是把每个班所有的人放到一起,做每个人分数的平均。
所以,在select后面的列选择中,除了集计列以外,其他列都必须在group by的范围里面,这样才知道根据什么去分组。
如果按照你说的将id放到group by里面去的话,相当于
这个学校有两个班级都叫一班(可能年级不同),但班级id不同。
如果只是按照班级名字来分组的话,求得是这两个班级在一起的平均分。
如果按照id来分的话,就求得是各个班的平均分了。
这还没有问题。
怕就怕在,如果在表里,对同一个班级id,在输入的时候,给一部分人
输入的是一班,而给另外一些人输入的是三年一班,这个时候,要把这些都
分到一组里面去,那选出来的name到底是一班还是三年一班了。
order by是排序用,是根据你选出来的名字来排序,asc是升序的意思。
对于字符串的列,是从首字母开始按照字母表的顺序来排序
回答补充:
例
select name,max(id) from syscolumns where id>100 group by name having name>'m' order by name asc
这里max(id)是集计出来的列,而name是原来在表里就存在的列
你的第一个查询是实现的分组统计的功能,函数是count(id),意思是按name字段的值来进行分组统计,简单的说就是在表syscolumns里,name字段相同的各有多少个。拿你的结果来说就是:max_lvl有 1个,min_lvl有 1个minit有 1个等等。
第二个查询实现的是按name字段分组查询最大的id字段的功能;比如说你的结果里值为“name”的name字段共有 3个,但是id值最大的一个是 name 1945057965;
group by 是分组的作用,使用它有一个规定,就是select后面的字段如果不使用聚合函数,则必须跟在group by之后。
order by name asc 这句是结果按name的值的升序排序。与之相对应的是:order by name desc
1. 计算不同name的id总数
2. 计算不同name的最大的id
一个按列查找一个按行查找。
QL整治是什么意思?
QL整治是一个近年来逐渐流行的行业术语,指的是通过各种手段和技术,对企业、个人等进行全面的调查、检测、评估,进而对所发现的问题进行整改和解决。QL整治的目的是提升企业或个人的管理水平和经济效益,促进企业或个人的可持续发展。QL整治涉及到多个方面的专业技能和知识,比如数据分析、风险评估、法律规范...
PLUSQL出现乱码问题怎么办?
1、首先在电脑上找到并打开PLSQL,弹出登陆界面,进去登陆。2、然后随便写了一个查询语句,发现显示有乱码。3、这时先查看oracle服务器端的字符编码是什么。4、配置一个环境变量就可以解决问题,这时回到电脑桌面,打开计算机属性。5、然后点击高级系统设置,接着在高级选项卡下点击-环境变量选项。6、然后...
hive主要用于解决哪类数据查询问题
Hive主要用于解决大规模数据集上的批量数据查询和分析问题。在大数据领域,Hive提供了一个基于Hadoop的数据仓库基础设施,使得用户能够使用类SQL的查询语言HiveQL(Hive Query Language)来对数据进行查询和分析。Hive特别适合处理非结构化和半结构化数据,如日志文件、网页点击流等,这些数据往往以文本形式存储...
qqll是什么意思?
QL是字母缩写,没有明确含义。关于QL的意思有多种说法。考虑到这个问题涉及字母缩写和具体含义,我们分析几种可能情况来帮助理解这个缩写。但请注意,由于语境不同,QL的具体含义可能会有所变化。以下是对该缩写可能的解释:解释一:网络用语中的QL 在网络语境下,QL可能是一个流行的缩写词汇。它可能被用...
请教SQL的一个问题~,如何在update时向某个列的值追加字符?
mysql> SELECT CONCAT(’My’, NULL, ‘QL’);-> NULL mysql> SELECT CONCAT(14.3);-> ‘14.3′CONCAT_WS(separator,str1,str2,…)CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。 第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以...
华硕5QL PRO主板诊断卡跑1D 60故障,请教高手
回答:有没有高手指教下,谢谢啦,在等。月饼老师,能帮忙下吗
求助QL3X频繁蓝屏问题
尝试关机强制重启一下试试,也可以选择进入安全模式修复一下系统,或者重新拔插一下内存条,实在不行就只能重新装一下系统了,要准备一个u盘重装
MMPI测试结果 请老师们看一下 告诉我有什么问题啊 拜托了。
而且很郑重的告诉你,虽然MMPI是很正规的心理测试,但是心理学上任何量表问卷都是作为参考,不是一定就说明问题。即使精神病院判断一个人是否有精神疾病,也不是给他张量表填填算出个分数就行的。而你想了解测试结果也不需要等着别人来回答啊,百度百科上详细列着各维度是什么意思。http:\/\/baike.baidu...
网络连接问题 大虾请进
1、全向QL1680在IE浏览器的地址栏里面敲入IP地址10.0.0.2,的用户名是admin出厂时默认值:密码是qxcomm1680,管理员密码是 qxcommsupport 2、全向QL1880在IE浏览器的地址栏里面敲入IP地址192.168.1.1,的用户名是root出厂时默认值:密码是root 3、全向QL1688在IE浏览器的地址栏里面敲入IP地址10.0.0.2,用户名为admin;...
药片上标有QL是什么意思?
室内弱电线路安装结束后,要请网通等专业公司或是物业公司进行检查,并由专业人员进行室内新布的弱电线与入户接口线盒的连接,以保证今后的使用不出问题和故障,一般家装公司的电工都有低压电工操作证,对强电施工标准是可以释怀的,但是对弱电的施工并不专业。为了节俭装修用度,原有的线路能用的可以不...
卷玉麝香: select A.BarCode from tb A inner jion tb B on A.BarCode =B.BarCode anddatediff (d,A.sTime,B.sTime) >2 group by A.BarCode
宣恩县18538352597: 一个SQL查询的问题,哪位高手帮忙解决 - ?
卷玉麝香: sql server 代码:select (select sum(1) from #employees where datepart(year, hire_date) = 1995) as y1995, (select sum(1) from #employees where datepart(year, hire_date) = 1996) as y1996, (select sum(1) from #employees where datepart(year, ...
宣恩县18538352597: SQL查询问题请教. - ?
卷玉麝香: SELECT NAME,COUNT(DISTINCT RESULT) AS TOTAL FROM RESULT WHERE (RESULT IN(3, 4, 5, 1, 7) or RESULT IN(3, 4, 5, 1, 8) or RESULT IN(3, 4, 5, 2, 7) or RESULT IN(3, 4, 5, 2, 8)) GROUP BY NAME;
宣恩县18538352597: SQL查询问题,高手帮忙啊 - ?
卷玉麝香: select sum(case when 步骤1='A' then 数量 else 0 end) as 步骤1数量,(同左边..) from 表
宣恩县18538352597: sql数据库查询问题 - ?
卷玉麝香: 理论上是无法确定那个是用户表的. 不过你可以查一下,比如根据user,account,login,admin等关键字查找. 如下sql可以查询当前数据库的表:select [name] from sysobjects where xtype='U' and( [name] like '%user%' or [name] like '%account%') 希望对你有帮助.
宣恩县18538352597: 请教一个sql查询的问题,高手指点,谢谢.... - ?
卷玉麝香: 1,select username, powername from tbuser u,tbuserrole ur,tbrole r where u.id=ur.user_id and ur.role_id=r.id 用到三张表2,select username, powername from tbuser u,tbuserrole ur,tbrolepower rp,tbpower p where u.id=ur.user_id and ur.role_id=rp.role...
宣恩县18538352597: 请各位大牛帮忙解决一个SQL查询的问题?
卷玉麝香: declare @begintime char(2),@endtime char(2),@date datetime select @date =getdate() select @begintime=substring(convert(char(19),@date ,121),12,2) select @endtime =substring(convert(char(19),DATEADD(hour, 23, @date),121),12,2)if ...
宣恩县18538352597: 一个关于sql数据库查询的问题?高手帮忙?
卷玉麝香: 方法一: SELECT N.id, N.name, N.sex, U.id, U.username, U.address, U.dutyFROM name AS N INNER JOIN username AS U ON N.name = U.username GROUP BY U.username 方法二: SELECT N.id, N.name, N.sex, U.id, U.username, U....
宣恩县18538352597: SQL查询的问题 - ?
卷玉麝香: SELCECT 医生编号 FROM 就诊记录 GROUP BY 医生编号 HAVING COUNT(病历号)>=ALL (SELECT COUNT(病历号) FROM 就诊记录 WHERE 就诊日期='*年*月*日' GROUP BY 医生编号)
宣恩县18538352597: 一个SQL查询语句的问题,请求帮助. - ?
卷玉麝香: 问题补充:如果再加一个类别表怎么写了 --------------------------- select a.编号,a.姓名,c.类别名称, count(b.姓名编号) as 出现次数 from a inner join c on c.类别编号=a.类别编号 left join b on a.编号=b.姓名编号 group by a.编号,a.姓名 ,c.类别名称