数据库中排序嵌套的问题

数据库中排序嵌套的问题,第1张

select from

(select sname,chinese,[order]=(select count(1) from Grade where

chinese>achinese or (chinese=achinese and sname<=asname) )

from Grade a)aa where sname='小明'

是在程序里判断,还是直接在数据库上判断?

程序里的话,取出来第一条来,接着把那一列取出来,判断是否等于即可;

数据库上的话,不清楚具体要什么样的结果,可参考:

declare @num varchar --定义变量

select @num = 列 from tableA --赋值变量

if(@num = '开心')

begin

print '包含'

end

else

begin

print '不包含'

end

参考一下这个吧。

Declare @i int,@j int

Declare @ParentStr varchar(max)

Set @ParentStr = 'Coca Cola'

Declare @TargetChar char

Set @TargetChar = 'c'

Set @i=1

Set @j=len(@ParentStr)

Declare @num int

while @i<@j

Begin

Set @num=Charindex(@TargetChar,@ParentStr,@i)

If @num > 0

Begin

Set @i=@num+1

Select SUBSTRING(@ParentStr,1,@num - 1)

End

Else

Begin

Set @i=@i+1

End

Select @num

End

返回值:空格,Co,Coca

oracle 数据库答案 如下

select

(

case

when instr('asfdaw','s')=0 then 'asfdaw'

else substr('asfdaw',0,instr('asfdaw','s')-1)

end

) a

from dual

嵌套查询是由里向外处理

select sno,cno

from sc x

where grade>=(select avg(grade) from sc y where ysno=xsno)

首先执行ysno=xsno,我想Sno是学号吧,从X关系和Y关系中查找学号相同的,从新建立一个新的关系,

再从新的关系中求成绩的平均值。

最后才在新的关系中查找满足条件(grade>=平均成绩)的Sno和Cno。

最后的结果排序如果没有指定显示顺序,结果将按其最方便的顺序(通常是元组在表中的先后顺序)输出结果。可以按照自己的意思排列结果的顺序,用ORDER BY子句指定一个或多个属性列的升序(ASC)或降序(DESC)。

select sno,cno

from sc x

where grade>=(select avg(grade) from sc y where ysno=xsno)

ORDER BY grade ASC;

select sno,cno

from sc

where grade>=(select avg(grade) from sc )

ORDER BY grade ASC;

输出的结果肯定一致吧。

外部的循环条件

while($row = $dosql->GetArray())

二级循环的条件

while($row2 = $dosql->GetArray()){

>

<LI style="width:100px; height:30px; float:left;"><php echo $row2['S_name']; ></LI>

二级循环出来后$dosql->GetArray()肯定是假,当然只循环一次了

select 的命令比较多了,常用的是select 表的列名 from 表名/视图 [where 条件 group by 字段 order by 表的列名 asc/desc],当然也可以实现多表关联,select from a,b where a列名=b列名 ;

当然select 可以嵌套,但必须数据库支持,sqlserver2000,oracle和mysql50以上都支持了,如 select from (select from 表名)a ,select的嵌套是比较复杂,可以实现n重嵌套的。

select 还有特殊的用法就是select into 表名 select from 表名

即为表的复制,好像sqlserver支持这个的。

子查询比较复杂,你可以看看一些参考书

知道的就这么多了,应该还有其他的了。

以上就是关于数据库中排序嵌套的问题全部的内容,包括:数据库中排序嵌套的问题、SQL server数据库嵌套查询、数据库函数如何嵌套//把t2.name字段从第二个字符开始找(符合,并返回(符号前面的字符等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9432135.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存