create table ryb (nam varchar(10),bz varchar(10),sm varchar(20)) insert into ryb select '张三' as name,null as bz,'你好' as sm union all select '李四',null,'啊好吗' update ryb set bz='最长' where LEN(sm)=(select MAX(len(sm)) from ryb)--结果nam bz sm ---------- ---------- -------------------- 张三 NULL 你好 李四 最长 啊好吗(2 行受影响)
试一下这句update ryb set bz='最长' from( select top 1 * from ryb where xm='张三' order by len(sm) desc) as b where ryb.xm=b.xm and ryb.sm=b.sm
版主 字段sm是字符类型 max(sm) 还是其本身值
这样不行? update ryb set bz='最长' where len(sm)= (select top 1 MAX(len (sm)) from ryb)
UPDATE ryb SET 字段=‘’ where bz= (SELECT TOP 1 bz FROM PRDT ORDER BY LEN(NAME) DESC))
UPDATE ryb SET 字段=‘’ where bz= (SELECT TOP 1 bz FROM PRDT ORDER BY LEN(bz) DESC))
from ryb
group by xm
create table ryb (nam varchar(10),bz varchar(10),sm varchar(20))
insert into ryb
select '张三' as name,null as bz,'你好' as sm union all
select '李四',null,'啊好吗'
update ryb set bz='最长'
where LEN(sm)=(select MAX(len(sm)) from ryb)--结果nam bz sm
---------- ---------- --------------------
张三 NULL 你好
李四 最长 啊好吗(2 行受影响)
select top 1 * from ryb where xm='张三' order by len(sm) desc) as b where ryb.xm=b.xm and ryb.sm=b.sm
字段sm是字符类型
max(sm) 还是其本身值
这样不行?
update ryb set bz='最长'
where len(sm)=
(select top 1 MAX(len (sm)) from ryb)
where bz=
(SELECT TOP 1 bz FROM PRDT ORDER BY LEN(NAME) DESC))
where bz=
(SELECT TOP 1 bz FROM PRDT ORDER BY LEN(bz) DESC))