如果一张表所有数据都相同,更新前10行数据有办法吗 如果我一张表里的数据都是一样的,怎么更新前10行的数据没有主键也没法用where有什么办法能更新吗 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 update a set xx=xxfrom (select ROW_NUMBER() over(order by getdate()) as no,* from tb) awhere no<11 RowNumber() --行号或者 使用临时表都可以 DECLARE @T TABLE(COL NVARCHAR(10))INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST'INSERT @T SELECT 'TEST';WITH TMP AS ( SELECT TOP 10 * FROM @T ) UPDATE TMP SET COL = 'TESTNEW'SELECT *FROM @T/*COL----------TESTNEWTESTNEWTESTNEWTESTNEWTESTNEWTESTNEWTESTNEWTESTNEWTESTNEWTESTNEWTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTEST(23 row(s) affected)*/ 用TOP 10不可以吗?update X set AAA='BBB'FROM (select TOP 10 * from T)X update top(10) TABLE set TABLE.COLUMN='VALUE' row_number() over( order by getdate()) 不写别名的话一样的UPDATE TOP (10) [表名] SET [列名]='' sql语句优化,在线等。。直接给分 随机字符 请教一下,sql server这个小功能是怎么实现的? 汇总后求两表的关联 sql2000如何设置双主键 请问大哥,如何向表中批量的插入数据,能举个例子吗。 使用了not exists 为什么#resultB结果表中还有重复行 弱弱的问个数据库速度的问题 求查询重复记录的SQL语句 請問在SQL SERVER 的維護計劃中,壓縮數據庫有什麼好處??有什麼要注意的地方??是不是壓縮以後就不能更改資料????如添加,刪除, 请问mysql 怎样将一列的内容变为行的报表? 由于 mysql 版没有人会解答 关于SQL 表与表之间更新问题
from (select ROW_NUMBER() over(order by getdate()) as no,* from tb) a
where no<11
RowNumber() --行号或者 使用临时表都可以
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST'
INSERT @T SELECT 'TEST';
WITH TMP
AS ( SELECT TOP 10
*
FROM @T
)
UPDATE TMP
SET COL = 'TESTNEW'
SELECT *
FROM @T
/*
COL
----------
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TESTNEW
TEST
TEST
TEST
TEST
TEST
TEST
TEST
TEST
TEST
TEST
TEST
TEST
TEST(23 row(s) affected)
*/
FROM (select TOP 10 * from T)X
update top(10) TABLE set TABLE.COLUMN='VALUE'
UPDATE TOP (10) [表名] SET [列名]=''