你需要了解join操作
至於主鍵,你可以用user_id和article_id一起作為復合主鍵,最簡單的作法如下(假定你的使用者id和文章id不變。。當然一般是不變的)...
create table shoucang_table
user_id int(11),
article_id int(11),
create_at datetime,
primary key (user_id ,article_id )
這樣要知道使用者2的收藏列表,可以
`select article_table.id,article_table.title,article_table.author from
article_table inner join shoucang_table
on shoucang_table.user_id=2 and shoucang_table.article_id=article_table.id`
join把收藏表和文章表連線起來,on後面是條件。這裡指定收藏表中使用者id為2,且收藏表的文章id和文章表id對應。
其他:語句可以優化下,因為join操作其實是兩張表的叉乘,會將m條資料的收藏表和n條資料的文章表合成乙個m*n的大表。因此可以選中收藏表中使用者id為2的作為子表,假設有k條(k<
select article_table.id,article_table.title,article_table.author from article_table
inner join
(select * from shoucang_table where user_id=2) as shoucang
on shoucang.article_id=article_table.id
當然可以建立表的索引來進一步優化,這些以後再研究先了解mysql的常用操作吧
商城功能構建
一 模組劃分 網上 系統分為前台和後台兩部分。前台系統主要負責產品的展示和上網使用者的商品選購。前台系統可以分為五個模組,產品展示模組 活動顯示模組 網上購物車模組 支付模組 會員中心模組。後台系統可以分為七個模組,商品類別 管理模組 商品管理模組 產品推薦模組 訂單管理模組 送貨方式管理模組 郵寄...
商城秒殺功能實現
令牌機制實現秒殺功能 利用定時任務 或資料庫作業 將某些商品在規定時間之後要開啟秒殺,根據庫存量同步到快取 redis 中。根據每乙個商品產生對應的token數量,1.redis快取採用 中的list資料型別儲存每個商品的令牌。採用list資料型別儲存的原因主要是每乙個執行緒從list中pop時是單...
js 小功能收藏
1,固定表頭 固定表頭 function theadfixed id 2,給某個元素外層加標籤 id wrapall 3,json陣列按照某個字段排序 按照某個字段排序 function objsort prop if val1 val2 else if val1 val2 else 4,得到大寫字...