由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Database版 - T-SQL Update Statement Question
相关主题
请教一个SQL Query请教比较两个table,找出相同和不同的records
请教一个问题请教oracle select top 10 from ... order by desc
问个sql的题目问一个关于SQL的问题
急问一个关于T-SQL的问题,谢谢有趣的Join问题,源于SQL和SAS比较。
SQL Server table variable 的一个问题请教。Interesting Data Manipulation question
最近写了不少SQL script,请大牛评价下属于什么水平Help about a SQL statement
SQL combine two columns from two different tables no shared (转载)To get the 2nd, 3rd, 4th largest value
oracle中如何查询已建立的表结构请问T-SQL中Group By之后怎么找到特定的record
相关话题的讨论汇总
话题: field话题: table话题: update话题: question话题: statement
进入Database版参与讨论
1 (共1页)
w**********1
发帖数: 17
1
Need to replace Field_A with bottom layer of data in Field_B in Table_X.
Wanted to use the following -
UPDATE Table_X
SET Field_A=
(SELECT TOP(1) Field_B FROM Table_X ORDER BY Field_C DESC)
GO
However 'order by' is not allowed in sub-query. What could be the workaround
? Thanks!!
B*****g
发帖数: 34098
2
CTE

workaround

【在 w**********1 的大作中提到】
: Need to replace Field_A with bottom layer of data in Field_B in Table_X.
: Wanted to use the following -
: UPDATE Table_X
: SET Field_A=
: (SELECT TOP(1) Field_B FROM Table_X ORDER BY Field_C DESC)
: GO
: However 'order by' is not allowed in sub-query. What could be the workaround
: ? Thanks!!

s**********o
发帖数: 14359
3
这个就得分两步走
y****w
发帖数: 3747
4
first_value

workaround

【在 w**********1 的大作中提到】
: Need to replace Field_A with bottom layer of data in Field_B in Table_X.
: Wanted to use the following -
: UPDATE Table_X
: SET Field_A=
: (SELECT TOP(1) Field_B FROM Table_X ORDER BY Field_C DESC)
: GO
: However 'order by' is not allowed in sub-query. What could be the workaround
: ? Thanks!!

w**********1
发帖数: 17
5
Thanks much for all your responses!
B*****g
发帖数: 34098
6
贴最终解决方案

【在 w**********1 的大作中提到】
: Thanks much for all your responses!
j*******n
发帖数: 48
7
UPDATE Table_X
SET Field_A=
(
SELECT TOP(1) Field_B
FROM
(SELECT ROW_NUMBER() OVER (ORDER BY Field_C DESC) as row_num, Field_B
FROM Table_X) t
WHERE t.row_num = 1
)
z**********8
发帖数: 2049
8
这个题目的具体应用:
1。 给最底层 level的 员工 加薪 10%,或者bonus 15%;
2。 引申,给所有manager level的 bonus 20%;
3。 如果 一个 公司 出售 整机,sector, 和 parts,如果给 所有 parts 零售价加
价5%。
这个题的知识点:
1。 update
2. top()
2。row_number()
3. hierarchy 问题的 解决方案。
请补充。
1 (共1页)
进入Database版参与讨论
相关主题
请问T-SQL中Group By之后怎么找到特定的recordSQL Server table variable 的一个问题请教。
a problem, thank you最近写了不少SQL script,请大牛评价下属于什么水平
一个sql问题:怎样实现 (((a1*10)+a2)*10+a3)*10 ... (转载)SQL combine two columns from two different tables no shared (转载)
猪一样的队友oracle中如何查询已建立的表结构
请教一个SQL Query请教比较两个table,找出相同和不同的records
请教一个问题请教oracle select top 10 from ... order by desc
问个sql的题目问一个关于SQL的问题
急问一个关于T-SQL的问题,谢谢有趣的Join问题,源于SQL和SAS比较。
相关话题的讨论汇总
话题: field话题: table话题: update话题: question话题: statement