国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

嵌套評論的數據庫表設計

2024-07-21 02:48:50
字體:
來源:轉載
供稿:網友
嵌套評論的數據庫表設計

設計嵌套評論數據庫表可仿效無限級分類,在表中加一個ParentId字段。嵌套評論頁面大致這樣:

評論1 回復評論1 恢復評論1評論2 回復評論2 評論3......

但是, 在顯示評論的時候,如果使用ParentId會涉及到多表的聯結,嵌套層級越多意味著表之間的聯結增多,這樣會影響查詢效率。

于是,我們想到在表中增加一個字段,用來顯示所有的層級:/1/2/5/

設計數據庫和表:

create database NestedCommnets
use NestedCommnets
Create table UserComments(
    Id int not null identity(1, 1),
    ParentId int not null,
    Content nvarchar(100) not null,
    Depth smallint not null,
    Thread nvarchar(max) not null
)

往數據庫表中添加如下數據:

1以上,Thread字段以"/"分隔,羅列了所有的父級Id,Depth字段顯示的是層級。

查詢所有的評論:

select SPACE(u.Depth*6) + u.Content as 評論 from UserComments as u

2

如果希望結合Thread和Depth字段進行排序:

--STR(nExPRession [, nLength [, nDecimalPlaces]])返回與指定表達式對應的字符串
--nLength,返回的字符串長度;nDecimalPlaces,返回字符串的小數位數
select 
SPACE(u.Depth*6) + u.Content as 評論,
u.Thread + LTRIM(STR(u.Depth,100,0)) as 排序 
from UserComments as u
order by u.Thread + LTRIM(STR(u.Depth,100,0))

3


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 常德市| 伽师县| 玉林市| 灵宝市| 岚皋县| 武定县| 东乌| 类乌齐县| 雷州市| 乌兰县| 鹤山市| 宜黄县| 团风县| 余庆县| 东莞市| 磐石市| 大埔县| 凤城市| 云霄县| 木里| 南华县| 泰安市| 曲周县| 大竹县| 五台县| 惠来县| 华池县| 南昌县| 太保市| 松滋市| 扶沟县| 睢宁县| 东山县| 宁蒗| 江口县| 梅州市| 望谟县| 阿克| 凤凰县| 陇西县| 扶余县|