永发信息网

C# SQL 产品有多个分类 分类有属性

答案:2  悬赏:10  手机版
解决时间 2021-01-25 09:12
我有一个产品表, 一个分类表。 一个产品可以有多个分类。
比如:产品A 有分类1(置顶),分类2,分类3.这三个分类。
产品B 有分类1,分类2(置顶),分类3.这三个分类。
分类有置顶的属性,查询的产品的时候,按分类查询,如果按分类1查询,则产品A排最前面,因为产品A属于分类1而且是置顶的,产品B排后面。
如果按分类2查询则产品B排最前面,因为产品B属性分类2是置顶的,产品A则排后面。

这个表怎么设计?查询的时候怎么查?
最佳答案
产品和分类是多对多关系,所以用三张表:一张产品表,一张分类表,一张关联表。
其中关联表包括三个字段:(产品ID,分类ID,权重值)。权重为1表示置顶,为0表示不置顶。
你问题中的关联关系在关联表中表示为:
产品ID    分类ID    权重值
A              1             1
A              2             0
A              3             0
B              1             0
B              2             1
B              3             0
这样查询时,直接
select * from 关联表 where 分类ID=1 order by 权重值
全部回答
select drugname ,sum(if drugkind = 0 then 1 else 0 endif) drugkind0, sum(if drugkind = 0 then 0 else 1 endif) drugkind1 from 表 group by drugname
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
再找:河南平顶山舞钢市安寨村陈书有。此人O9
柯坪县安全生产监督管理局地址在哪,我要去那
泛扬英语地址在哪,我要去那里办事
"叫"有不少近义词,请你写出下列动物"叫"的词
已知ATPAMP+PPi+能量(AMP含有一个磷酸基团
3d玩法卖出豹子得多少钱
标致408 2014款 1.8l 自动豪华版是小众的车子
试调酒冰锐可以带上火车吗?我想带十多瓶
下列地理事物中,属于大洲分界线的是DA. 科迪
如何形容大白兔奶糖的好吃
山东哪个城市打工人员最多…
新宿格拉丽斯酒店如何到东京迪斯尼乐园
某土坝工程,现场取土进行土工试验,结果得出:
永定区畜牧水产局怎么去啊,我要去那办事
阿克苏地区安全生产监督管理局地址在什么地方
推荐资讯
那个移动全家消费漫128 免宽带费 要不要办的
华为荣耀4X怎么在桌面新建文件夹。。
绿春县骑马坝中学地址有知道的么?有点事想过
伴娘应该收钱吗 收多少
好多年前,因为家里9点多公鸡打鸣,结果奶奶
【地坛公园书市】译成英语:地坛公园今天有一
街头舞台一个穿裙子带草帽的男流浪汉唱的歌叫
怎么查看QQ会员什么时候升级?
(bi)---升拼音是bi,然后填一个字跟升搭配
塑料机箱和金属的哪个好
小区净水机安装流程是怎样的呢
谁有街机三国小伙伴现在能用的1.4以上的
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?