有个表估计是存储过程插进去的吧! 所以想找到这个过程名.该如何找呢?
select object_Name(ID) from syscomments where text like '%表名%'
删除重复的ID留下时间最后的一条记录
ID Name LastLoginDate
001 A 2008-12-01
002 B 2008-12-03
001 A 2008-12-04
留下 001 A 2008-12-04
删除 001 A 2008-12-01
也就是ID 重复的 把最后的LastLoginDate 留下 其他的给删除
SQL code delete tb from tb t where LastLoginDate not in (select max(LastLoginDate) from tb where id = t.id)
DECLARE @vendor_id int, @vendor_name nvarchar(50), --嵌套双层游标循环
@message varchar(80), @product nvarchar(50)
PRINT '-------- Vendor Products Report --------'
DECLARE vendor_cursor
SELECT VendorID, Name FROM Purchasing.Vendor WHERE PreferredVendorStatus = 1 ORDER BY VendorID
OPEN vendor_cursor --打开游标
FETCH NEXT FROM vendor_cursor
WHILE @@FETCH_STATUS = 0 --如果有记录行则循环
BEGIN
PRINT ' '
SELECT @message = '----- Products From Vendor: ' + @vendor_name
PRINT @message
-- 要在内部定义内循环游标
DECLARE product_cursor
SELECT v.Name FROM Purchasing.ProductVendor pv, Production.Product v
WHERE pv.ProductID = v.ProductID AND pv.VendorID = @vendor_id --游标带参数的是从外部获取值
OPEN product_cursor
FETCH NEXT FROM product_cursor
IF @@FETCH_STATUS <> 0
PRINT ' <<None>>'
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @message = ' ' + @product
PRINT @message
FETCH NEXT FROM product_cursor
END
CLOSE product_cursor
DEALLOCATE product_cursor
FETCH NEXT FROM vendor_cursor
END
CLOSE vendor_cursor
本文介绍了几种实用的SQL技巧,包括查找存储过程名称的方法、删除重复记录并保留最新记录的策略,以及使用游标实现复杂的数据处理流程。这些技巧对于数据库开发者来说非常有价值。
3296

被折叠的 条评论
为什么被折叠?



