6 回答

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
你可以合并之后,定制一個(gè)排序規(guī)則?;蛘叨ㄖ埔粋€(gè)合并規(guī)則。
因?yàn)閮蓚€(gè)表完全沒(méi)關(guān)系,如果你就是想統(tǒng)一處理,比如,你一頁(yè)10個(gè)數(shù)據(jù),你要整8篇文章,2個(gè)商品,就定義一下在哪個(gè)地方插入這兩條商品,取到這十個(gè)數(shù)據(jù)遍歷整理成一串傳到前面,那下一頁(yè)就相當(dāng)于取第9到16篇文章,第3到4個(gè)商品,一樣8個(gè)和2個(gè),就可以分頁(yè)了。不過(guò)這樣其實(shí)挺蛋疼的,增加了后端開(kāi)銷。
所以,你可以直接把這些數(shù)據(jù)不合并直接往前端扔,前端接收到之后再排一下,想怎么排怎么排。
那,還有可能,你這個(gè)玩意本身分頁(yè)與文章發(fā)布,商品創(chuàng)建等時(shí)間相關(guān),在sql中可以直接用一個(gè)統(tǒng)一的時(shí)間作為排序根據(jù)進(jìn)行分頁(yè),將兩表合并。
其實(shí)還是要看你究竟業(yè)務(wù)是想怎么做和技術(shù)實(shí)現(xiàn)。

TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個(gè)贊
SELECT id, product_name as name,TYPE =0 FROM 商品表
UNION
SELECT id, title as name,TYPE =1 FROM 文章表 LIMIT 0 , 30
類似這樣

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個(gè)贊
現(xiàn)在有兩個(gè)數(shù)據(jù)表,一個(gè)是商品表,一個(gè)是文章表,他們要在同一個(gè)前端列表混合顯示并做分頁(yè),有可能實(shí)現(xiàn)嗎?
有。

TA貢獻(xiàn)1982條經(jīng)驗(yàn) 獲得超2個(gè)贊
按照你現(xiàn)在說(shuō)的可以這樣做
另外建一張表
create table mixed_table (
id int unsigned NOT NULL AUTO_INCREMENT,
source_id int unsigned COMMENT '商品id或者文章id',
source_type tinyint unsigned COMMENT '0 商品 1 文章',
PRIMARY KEY (id)
);
其他字段按需添加
- 6 回答
- 0 關(guān)注
- 1007 瀏覽
添加回答
舉報(bào)