看板 Database 關於我們 聯絡資訊
※ 引述《knives ()》之銘言: : 我的DBMS是Mysql : 我有一個相簿Table是 長這樣 picid 、pic_href : 如果我想做輪播的話,假設我有五張圖 p1、p2、...、p5 : 假設我現在點到p3 的話,那下一張就是p4、上一張就是p2 : 如果是點到p1的話,那上一張就是p5,反之p5的下一張就是p1 : 因為我希望一次照順序列出來放在陣列供js使用 : 不必說要等到按下按鈕再來抓下一張是誰 : 這樣的話,陣列的順序就要一次決定 : 我原本是想說執行三次sql : SELECT * FROM pic WHERE picid<'目前的picid' : SELECT * FROM pic WHERE picid='目前的picid' : SELECT * FROM pic WHERE picid>'目前的picid' : 再丟到陣列上,可是這樣要執行三次sql,不知道有沒有方法做一次就好了 : 謝謝回答 有點訝異~ 要做聯播時,假設你希望以「上傳時間」或是「檔名」或是「客戶的特定需求」 作為排序條件, ok! 很簡單用Group by XXX 語法即可 然後把所有排序後的檔名傳到前端JS,用陣列存放 例如 var imgArray = new Array(); imgArray = ['aa','bb','cc','dd']; 如果要迴圈地播放,最後一張圖的下一張就是第一章 這應該用前端的js來控制, 例如 dd的下一張就是aa var jj = imgArray.indexOf('dd') if (jj >= (imgArray.length-1)) jj = 0; else if (jj <= 0) jj = imgArray.length-1; else jj++; var showPicture = imgArray[jj]; 直接從JS的陣列取出一筆資料,到後端取檔案 無須用後端SQL再做撈資料再做排序與下一張動作,這樣太麻煩 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.175.188
fantasyj:例如SQL SERVER用EXCEL OR CSV就不用.. 10/27 13:07