今天小試了一下sql2005中操作xml的語句:
如表divname中有列:id(int型),stylecontent(xml弄),content內容格式如下:
rows
>
/p>
<
head
>
/p>
<
div
id="title"
class
="title"
>
/p>
<
span
class
="lower"
>
span
>
/p>
div>
/p>
<
ul class
="inn"
>
/p>
/p>
ul>
/p>
head
>
/p>
<
item
id="1"
num="1"
condition
="n_imgpath like '%.%'"
orderby
="n_adddate"
>
/p>
<
content
>
/p>
<
li class
="img"
>
/p>
<
img
width
="100"
height
="75"
src=""
/>
/p>
li>
/p>
content
>
/p>
item
>
/p>
<
item
id="2"
num="11"
condition
="1=1"
orderby
="n_adddate"
>
/p>
<
content
>
/p>
<
li>
li>
/p>
content
>
/p>
item
>
/p>
rows
>
head裡面的內容是整個網頁的內容,item是head中中的內容,則檢索語句為:
select
convert
(nvarchar
(4000
),a.stylecontent.query(
'/rows/head
'))
asheader,
convert
(nvarchar
(4000
),t2.itemer.query(
'./content
'))
asitmer,t2.itemer.value(
'(./@num)[1]',
'int')
asrows,t2.itemer.value(
'(./@condition)[1]',
'nvarchar(100)')
ascondition, t2.itemer.value(
'(./@orderby)[1]',
'nvarchar(100)')
asorderby
from
divname a
cross
'rows/item')
ast2(itemer)
where
styleid=2
檢索結果則為兩行itemer的內容,
SQL2005中行轉列
sql2005中有函式可以直接將行轉列,這樣行轉列就好做多了。但是數值列和文字列稍有不同。1 文字列示例 create table tb 姓名 varchar 10 課程 varchar 10 分數 int insert into tb values 張三 語文 74 insert into tb ...
SQL2005乾淨解除安裝
昨天解除安裝安裝sql2005,安裝顯示成功之後可是就是沒有進入sql的檔案,只有配置工具,於是就解除安裝了,這下可好,解除安裝沒卸乾淨,又重新安裝,這次不僅顯示上一次已經安裝的檔案已經安裝安裝完成,還顯示只有配置工具,反覆弄了好幾次還是不成功,今天起來又開始我的安裝歷程,我先決定把該解除安裝的解除...
SQL2005 索引設計
1 評估索引本身的占用空間,當索引相對於其資料本身過大可能會無明顯作用。這種情況體現在 表很小,索引列過多,索引碎片過多。當索引在select中不起作用時,你還必須在insert和update delete這些操作中去維護這些不起作用的資料。2 in語句不一定不能使用索引,where id in 1...