sql更新最后一行

sql更新最后一行,第1张

现假设你的表按照字段ID排序

update 表 set

where id=(

select top 1 id from 表 order by id desc

)

SQL Server 查询最后一条记录有两种方法,一种是使用TOP命令,一种是使用LIMIT命令,具体方法如下:

1、使用TOP

SELECT TOP 1 * FROM user

SELECT TOP 1 * FROM user order by id desc

2、 使用LIMIT

SELECT * FROM user LIMIT 1

SELECT * FROM user ORDER BY id ASC LIMIT 1

SELECT * FROM user ORDER BY id DESC LIMIT 1

扩展资料:

SQL函数

1、算数函数

ABS (数值),绝对值

MOD (被除数, 除数),求余

ROUND (对象数值, 保留小数的位数),四舍五入

2、字符串函数

CONCAT (字符串1, 字符串2, 字符串3),拼接

LENGTH (字符串),字符串长度

LOWER (字符串),小写

UPPER (字符串) ,大写

REPLACE (对象字符串,替换前的字符串,替换后的字符串),替换

SUBSTRING(对象字符串 FROM 截取的起始位置 FOR 截取的字符数),截取

参考资料来源:百度百科-SqlServer

添加判断语句,判断有时,就修改

一是多写几个更新语句,一次更新一个字段

二是把更新语句,拼接成string形式,最后一次执行.

或用 @@rowcount判断是否存在:

create procedure alStuentsInfor

@StuId char(10),

@StuImage IMAGE=null,

@StuName varchar(20)=null,

@StuSex char(5)=null, @StuAge smallint=null

AS

BEGIN

UPDATE dbo.Students

SET iStuImage = ISNULL(@StuImage,iStuImage),

vStuName = ISNULL(@StuName,vStuName),

cStuSex = ISNULL(@StuSex,cStuSex),

sStuAge = ISNULL(@StuAge,sStuAge)

WHERE cStudentsId = @StuId

IF @@ROWCOUNT>0

RETURN 0

ELSE

begin

PRINT'NO RECORDS FOUND!'

RETURN 1

END

END

GO


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

原文地址: http://outofmemory.cn/sjk/10060646.html

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

发表评论

登录后才能评论

评论列表(0条)

保存