[SQL ] 請問 相簿 的上下兩張照片要如何查

看板Database作者 (深藍)時間15年前 (2008/10/17 21:53), 編輯推噓6(601)
留言7則, 3人參與, 最新討論串1/1
以無名的相簿為範例 http://0rz.tw/5a4VN,我是 PHP + MySQL 5.0 想請問各位前輩,要如何查詢上下各兩張的照片資料 我是把照片資訊儲存在 table 內 photoid albumid filename ....... 1 1 IMG_0001.jpg 2 1 IMG_0002.jpg 3 1 IMG_0003.jpg 4 1 IMG_0004.jpg 5 1 IMG_0005.jpg 6 1 IMG_0006.jpg 若目前瀏覽的是 photoid = 4,則下方會顯示 2,3,4,5,6 這五張照片 小弟知道可以用兩個 QUERY 查詢,但如果硬是要用一次 Query 完成,不知可不可行 另外,請教若有數萬張照片,用 LIMIT x,y 方式撈前後照片效能會很差嗎? 是否有必要,直接在資料庫新增欄位,寫入前後各兩張的 photoid,省去這道查詢 感謝大家幫忙:) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.249.119

10/17 23:39, , 1F
1. Union 聯集就可以了. 2. 可以,但是你更新刪除就得多一份工
10/17 23:39, 1F

10/18 00:30, , 2F
您好 Union 後若我取 Limit 他會只取其一 SELECT 的結果
10/18 00:30, 2F

10/18 10:15, , 3F
不太懂原PO的只會取其一的結果 照我自己想的給你建議
10/18 10:15, 3F

10/18 10:17, , 4F
上下兩個查詢都用LIMIT或TOP語法 用UNION如果上下查詢有
10/18 10:17, 4F

10/18 10:17, , 5F
完全一樣的資料 會變成一筆 如果要讓完全一樣的資料變成
10/18 10:17, 5F

10/18 10:18, , 6F
一筆 請用UNION ALL
10/18 10:18, 6F

10/18 13:55, , 7F
講錯了 是兩筆啦=.=
10/18 13:55, 7F
文章代碼(AID): #18-9ZUsN (Database)