作者 主題: 請問取得最後一筆回覆該怎做呢  (閱讀 6312 次)

0 會員 與 1 訪客 正在閱讀本文。

Error404

  • 懷疑的國中生
  • **
  • 文章數: 31
    • 檢視個人資料
請問取得最後一筆回覆該怎做呢
« 於: 2010-03-28 01:01 »
 :-[ 請問有寫過"討論區" 的鄉民.

請問 : 如何取得每篇文章最後回覆的帳號呢?想知道大家做法
我的表分為兩個 一個是(A)主題 ,一個是(B)每篇文章的回帖.

我自己想有兩個做法.
1.用sql 語法去查詢 取得(A)id 去(B)查詢有多少的回帖 並取得最後一筆

2.直接在(A)表紀錄最後發帖的人

請問大家這功能都怎做呢?

wenlien

  • 憂鬱的高中生
  • ***
  • 文章數: 119
  • 性別: 男
    • 檢視個人資料
    • Open or not open, that is the stupid question.
回覆: 請問取得最後一筆回覆該怎做呢
« 回覆 #1 於: 2010-03-28 09:04 »
:-[ 請問有寫過"討論區" 的鄉民.

請問 : 如何取得每篇文章最後回覆的帳號呢?想知道大家做法
我的表分為兩個 一個是(A)主題 ,一個是(B)每篇文章的回帖.

我自己想有兩個做法.
1.用sql 語法去查詢 取得(A)id 去(B)查詢有多少的回帖 並取得最後一筆

2.直接在(A)表紀錄最後發帖的人

請問大家這功能都怎做呢?

如果是我,我會選擇2.
選擇2, insert時會有額外的effort.
且會耗用較多的Disk空間.
等到資料/連線的量大時, 查詢的效益就會出現.
regards,

Stanley Huang

Error404

  • 懷疑的國中生
  • **
  • 文章數: 31
    • 檢視個人資料
回覆: 請問取得最後一筆回覆該怎做呢
« 回覆 #2 於: 2010-03-28 09:29 »
我也是考慮到資料量大的問題.
所以感覺用2比較適當.

不過現在有個問題就是.
如果記錄最後一個回覆者.
那假如我刪除該筆回覆.
這樣回覆者依然會存在.
並不會消失變前一個.

這又該怎規劃來設計呢.

gwstudy

  • 活潑的大學生
  • ***
  • 文章數: 205
    • 檢視個人資料
回覆: 請問取得最後一筆回覆該怎做呢
« 回覆 #3 於: 2010-03-28 10:28 »
我也是考慮到資料量大的問題.
所以感覺用2比較適當.

不過現在有個問題就是.
如果記錄最後一個回覆者.
那假如我刪除該筆回覆.
這樣回覆者依然會存在.
並不會消失變前一個.

這又該怎規劃來設計呢.

直接 select 回覆的記錄 order by 回覆時間 limit 最後一筆

kenduest

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 3675
    • 檢視個人資料
    • http://kenduest.sayya.org
回覆: 請問取得最後一筆回覆該怎做呢
« 回覆 #4 於: 2010-03-28 12:02 »

請用後者方式,因為許多有論壇都是這樣設計的。
I am kenduest - 小州

my website: http://kenduest.sayya.org/

Error404

  • 懷疑的國中生
  • **
  • 文章數: 31
    • 檢視個人資料
回覆: 請問取得最後一筆回
« 回覆 #5 於: 2010-03-28 12:20 »
直接 select 回覆的記錄 order by 回覆時間 limit 最後一筆

您的意思 是說 在 刪除回帖留言 後
做 該文章的最後一筆回帖名稱查詢,在進行UPDATE (A)的最後回帖者嗎?

還是直接
在首頁顯示文章主題那直接做查詢呢? (如果回帖的數量多這樣效率是不是比較慢)
« 上次編輯: 2010-03-28 15:15 由 Error404 »

gwstudy

  • 活潑的大學生
  • ***
  • 文章數: 205
    • 檢視個人資料
回覆: 回覆: 請問取得最後一筆回
« 回覆 #6 於: 2010-03-29 01:50 »
直接 select 回覆的記錄 order by 回覆時間 limit 最後一筆

您的意思 是說 在 刪除回帖留言 後
做 該文章的最後一筆回帖名稱查詢,在進行UPDATE (A)的最後回帖者嗎?

還是直接
在首頁顯示文章主題那直接做查詢呢? (如果回帖的數量多這樣效率是不是比較慢)


用什麼做法取決於很多因素。你說的都可以,你可以根據效率自行決定。

wenlien

  • 憂鬱的高中生
  • ***
  • 文章數: 119
  • 性別: 男
    • 檢視個人資料
    • Open or not open, that is the stupid question.
回覆: 回覆: 請問取得最後一筆回
« 回覆 #7 於: 2010-03-29 09:33 »
直接 select 回覆的記錄 order by 回覆時間 limit 最後一筆

您的意思 是說 在 刪除回帖留言 後
做 該文章的最後一筆回帖名稱查詢,在進行UPDATE (A)的最後回帖者嗎?

還是直接
在首頁顯示文章主題那直接做查詢呢? (如果回帖的數量多這樣效率是不是比較慢)


如果延續我之前所講的,那就是用update指令去更新資料表。
一般狀況下,刪除留言的case,應該不多見。
所以,不需要太顧慮到這個行為的performance。
regards,

Stanley Huang

liteC

  • 憂鬱的高中生
  • ***
  • 文章數: 158
    • 檢視個人資料
    • 軟體
回覆: 請問取得最後一筆回覆該怎做呢
« 回覆 #8 於: 2010-03-30 06:00 »
直接用一個表, 記錄最後發帖者的id 或名稱
這樣比較節省系統的負荷

如果你採用第一個方案. 你的機器可有的忙了. 除非你的網站只有小貓兩三隻在看.
非常謝謝學長們熱心回答我發問的問題
非常感寫 m(_ _)m