九色91_成人精品一区二区三区中文字幕_国产精品久久久久一区二区三区_欧美精品久久_国产精品99久久久久久久vr_www.国产视频

Hello! 歡迎來到小浪云!


PHP 與 MySQL 讀取收藏內(nèi)容:使用循環(huán)讀取還是合并數(shù)組查詢更優(yōu)?


avatar
小浪云 2024-11-10 271

PHP 與 MySQL 讀取收藏內(nèi)容:使用循環(huán)讀取還是合并數(shù)組查詢更優(yōu)?

phpmysql 讀取收藏內(nèi)容

網(wǎng)站中集成了用戶收藏功能,涉及到三個數(shù)據(jù)表:favorites(收藏數(shù)據(jù))、goods(商品)和 articles(文章)。

為了實現(xiàn)對收藏內(nèi)容的讀取,可以先按照 dateline 倒序查詢收藏數(shù)據(jù)表:”select * from favorites order by dateline desc”。接下來,通過獲取 cid(收藏的文章或商品 id)來讀取相應的標題。

有兩種方法可以獲取標題:

立即學習PHP免費學習筆記(深入)”;

方法 1:循環(huán)讀取

使用 foreach 循環(huán)遍歷每個收藏數(shù)據(jù),根據(jù) type 判斷是商品還是文章,并分別進行數(shù)據(jù)庫查詢。

if($type==1){     select * from goods where id = $value['cid']; }
登錄后復制

方法 2:合并數(shù)組后讀取

將所有商品 cid 和文章 cid 分別放入兩個數(shù)組中,然后使用 in 查詢同時讀取所有標題。

select * from goods where id in($array_goods); select * from articles where id in($array_articles);
登錄后復制

然而,第二種方法需要手動將標題組合起來,并根據(jù) dateline 排序,而使用第一種方法不需要額外的處理。因此,如果單次要查詢的數(shù)據(jù)量不大,推薦使用第一種方法。

另外,還可以考慮采用聯(lián)表查詢,并使用 if 函數(shù)區(qū)分商品和文章標題。

SELECT IF(goods.id IS NULL, articles.title, goods.title), favorites.* FROM favorites LEFT JOIN goods     ON goods.id = favorites.cid AND favorites.type = 1 LEFT JOIN articles     ON articles.id = favorites.cid AND favorites.type = 2 ORDER BY dateline DESC
登錄后復制

相關閱讀

主站蜘蛛池模板: 亚洲一二视频 | 欧美一区二区三区视频 | 精品欧美一区二区三区免费观看 | 亚洲欧洲精品在线 | 最新av在线播放 | 韩国久久精品 | 一级少妇女片 | 国产高清在线精品 | www精品美女久久久tv | 综合色婷婷 | 欧美国产一区二区 | 激情久久av一区av二区av三区 | 国产精品一区在线 | 亚洲一区视频在线播放 | 亚洲精品一区二区在线观看 | 日韩一区在线播放 | 国产精品久久久久久一级毛片 | 欧美成人一区二区 | 久久蜜桃精品 | 在线不卡视频 | 成人精品一区二区三区 | 久久精品视频在线观看 | 97精品超碰一区二区三区 | 日日摸日日添日日躁av | 日韩综合在线播放 | 狠狠色综合久久丁香婷婷 | 亚洲色片网站 | 精品无码久久久久国产 | 国产成人小视频 | 精品成人一区 | 99精彩视频 | 男人天堂手机在线视频 | 久久久久久99 | 成人国产精品久久 | 欧美久久久久久久久中文字幕 | 欧美a视频 | 国产黄色在线观看 | 亚洲v日韩v综合v精品v | 国产一区999 | 久久成人综合 | 天天插天天舔 |