SQL2000表分組問題

2021-05-23 21:13:34 字數 2973 閱讀 6157

現sql2000伺服器上有一張表,格式如下:

檔案內容 檔案組

1 a2 a

3 a4 b

5 c6 d

7 e8 e

9 f要實現將表內容更新為:

檔案內容 檔案組

a1 a

2 a3 a

b4 b

c5 c

d6 d

e7 e

8 ef

9 f意思是將分組資訊直接加在檔案內容之中?如果不用游標,不知道如何實現這樣的更新?

--> 測試資料: #tb

ifobject_id('

tempdb.dbo.#tb')

isnot

null

drop

table

#tbgo

create

table

#tb (檔案內容

varchar(1

),檔案組

varchar(1

))insert

into

#tbselect'1

','a

'union

allselect'2

','a

'union

allselect'3

','a

'union

allselect'4

','b

'union

allselect'5

','c

'union

allselect'6

','d

'union

allselect'7

','e

'union

allselect'8

','e

'union

allselect'9

','f

'alter

table

#tb

addid

intupdate

#tb

setid

=b.px

from

(select

*,px

=dense_rank()

over

( order

by檔案組 )

from

#tb)b,#tb a

where

a.檔案內容

=b.檔案內容

select

檔案內容,檔案組,id

from

#tbunion

allselect

distinct

檔案組,

'',id 

from

#tb

order

byid, 檔案組

檔案內容 檔案組  id

---- ---- -----------

a         11

a    12

a    13

a   

1b         24

b   

2c         35

c   

3d         46

d   

4e         57

e    58

e   

5f         69

f    6(

15行受影響)

--> 測試資料: [tb]

ifobject_id('

[tb]')

isnot

null

drop

table[tb

]create

table[tb

](檔案內容

varchar(10

),檔案組

varchar(10

))insert

into[tb

]select1,

'a'union

allselect2,

'a'union

allselect3,

'a'union

allselect4,

'b'union

allselect5,

'c'union

allselect6,

'd'union

allselect7,

'e'union

allselect8,

'e'union

allselect9,

'f'selectrn=

identity

(int,1

,1),*

into

#tb

from

(select

*from

tbunion

allselect

distinct'0

'as檔案內容,檔案組

from

tb ) t

order

by檔案組,檔案內容

select

case

when

檔案內容='

0'then

檔案組

else

檔案內容

endas

檔案內容,

case

when

檔案內容='

0'then

''else

檔案組

endas

檔案組

from

#tb

/*檔案內容    檔案組

a   

1    a

2    a

3    a

b   

4    b

c   

5    c

d   

6    d

e   

7    e

8    e

f   

9    f

*/

sql 2000 修復問題

sql 2000啟動時會彈出 本地計算機上的mssqlserver服務啟動後又停止了。一些服務自動停止,如果它們沒有什麼可做的 檢視系統日誌發現如下錯誤 18052 錯誤 9003,嚴重度 20,狀態 1。1 將d sqldata mssql data 目錄名data改為data bak 備份 2 ...

sql2000臨時表分頁

if exists select from dbo.sysobjects where id object id n temp and objectproperty id,n isusertable 1 drop table temp create table temp pager2011 id in...

sql2000安裝問題整理

1.版本問題 windows xp,windows2000 professional 安裝sql2000只能安裝個人版 不能安裝企業版 2.掛起的檔案操作 regedit hkey local machine system currentcontrolset control session mana...