更多>>數據庫 Blog
來源:一度好 時間:2021-09-10 閱讀:5030
本文主要講述了,當一篇文章屬于多個分類時,如何根據指定的分類,查出此分類下所有文章的問題。用 MySQL 自帶函數 find_in_set 則能很好的解決這一問題。
在實際使用中,我們經常會涉及到一篇文章對應多個分類的情況,那么在前端使用中,如何查詢某個分類下的文章呢?本文將告訴你解決方案。
首先我們準備一個文章表,表名和表字段如下。
表名:my_arc
表字段:
arc_id 文章ID,主鍵自增
arc_name 文章標題
arc_cate 文章所屬分類,若有多個,以英文 , 相隔,如 3,6,9
表中數據,如圖所示:
接下來,我們就可以用 MySQL 提供的 find_in_set 函數,進行數據的查詢了。
find_in_set 用法:
find_in_set(參數一,參數二)
參數說明:
參數一:想要查詢的分類值,如 3
參數二:文章表中的分類所存儲的字段,如 arc_cate
需求一:查詢 cate = 3 的記錄
代碼如下:
# 查詢 cate = 3 的記錄 SELECT * FROM `my_arc` where find_in_set(3,arc_cate);
執行結果如下:
需求二:查詢 cate = 1 的記錄
代碼如下:
# 查詢 cate = 1 的記錄 SELECT * FROM `my_arc` where find_in_set(1,arc_cate);
執行結果如下:
需求三:查詢 cate = 1 或 cate = 3 的記錄
代碼如下:
# 查詢 cate = 1 or cate = 3 的記錄 SELECT * FROM `my_arc` where find_in_set(1,arc_cate) or find_in_set(3,arc_cate);
執行結果如下:
需求四:查詢 cate = 1 并且 cate = 3 的記錄
代碼如下:
# 查詢 cate = 1 and cate = 3 的記錄 SELECT * FROM `my_arc` where find_in_set(1,arc_cate) and find_in_set(3,arc_cate);
執行結果如下:
評論列表 |
暫時沒有相關記錄
|
發表評論