嗨朋友我在 php 中列出可能与多个类别相关联的主题
我的数据库架构是
topics
topic_id
user_id
topic_name
category
category_id
category_name
topic_category (for association)
tc_id
topic_id
category_id
topic_response // 用于结果
tr_id
topic_id
response ( given in a form of 5 star rating so its in range of 1-5 always )
user_id
我需要做的是
1st ) 根据回复列出前十个主题,这将基于回复的数量
我试过->
select t.* ,count(tr.response) as votes from topics t , topic_response tr where t.topic_id=tr.topic_id group by tr.topic_id order by votes LIMIT 10
不工作
2nd)用户将显示主题列表。他可以选择他想要的类别,也可以是多个类别。
例如
如果他选择 category_id 1,2,3,4
,则将列出此类别中列出的主题。
我试过
select t.* from topics t ,topic_category tc where tc.topic_id = t.topic_id and category_id IN (1,3,2,4)
// not able to get idea on this i would prefer if i could do this in subquery since i also need to check if the user has already responded to that question .
**3)如果我得到一个查询工作假设。
从 php 方面,我将从选择多个下拉列表中获取 category_id 数组,例如 array(1,2,3,4)
所以我在想如何让这个查询接受类别ID
category_id IN (1,3,2,4)
以mysql查询的形式 **
**我可以直接传递一个数组吗
category_id IN ($ids)
$ids
数组在哪里**
我是 mysql 的新手,请帮助我,您的帮助将不胜感激:)