编程论坛's Archiver

yuwenxiang 发表于 2008-3-26 22:01

sql 语句 那位高手教下!!!

首先建表
create table tb(name varchar(10),val int,memo varchar(20))
insert into tb values('a',    2,   'a2(a的第二个值)')
insert into tb values('a',    1,   'a1--a的第一个值')
insert into tb values('a',    3,   'a3:a的第三个值')
insert into tb values('b',    1,   'b1--b的第一个值')
insert into tb values('b',    3,   'b3:b的第三个值')
insert into tb values('b',    2,   'b2b2b2b2')
insert into tb values('b',    4,   'b4b4')
insert into tb values('b',    5,   'b5b5b5b5b5')

在这表里面用sql语句查询
select a.* from tb a where not exists(select [size=6]1[/size] from tb where name = a.name and val > a.val)
这里面的 1 是什么意思
select a.* from tb a where [size=6]1 [/size]> (select count(*) from tb where name = a.name and val > a.val ) order by a.name
也是 1 的问题
select a.* from tb a where not exists(select [size=6]1[/size] from tb where name = a.name and val < a.val)


select a.* from tb a where val = (select top 1 val from tb where name = a.name order by [size=6]newid()) [/size]order by a.name
这里面的newid()) 函数什么意思  怎么用

luyihuaa5201 发表于 2008-3-27 16:29

select a.* from tb a where not exists(select 1 from tb where name = a.name and val > a.val)    1和*是一样的!

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.