作者ckmarkhsu (深藍)
看板Database
標題[SQL ] 請問 相簿 的上下兩張照片要如何查
時間Fri Oct 17 21:53:31 2008
以無名的相簿為範例
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
推 chph:1. Union 聯集就可以了. 2. 可以,但是你更新刪除就得多一份工 10/17 23:39
→ ckmarkhsu:您好 Union 後若我取 Limit 他會只取其一 SELECT 的結果 10/18 00:30
推 matchyou:不太懂原PO的只會取其一的結果 照我自己想的給你建議 10/18 10:15
推 matchyou:上下兩個查詢都用LIMIT或TOP語法 用UNION如果上下查詢有 10/18 10:17
推 matchyou:完全一樣的資料 會變成一筆 如果要讓完全一樣的資料變成 10/18 10:17
推 matchyou:一筆 請用UNION ALL 10/18 10:18
推 matchyou:講錯了 是兩筆啦=.= 10/18 13:55