mysql - 与子类别的多对多产品类别关系

标签 mysql

大家好,我有这样的东西:

类别

+--------+---------------+--------------+
| ctg_id | ctg_parent_id | ctg_discount |
+--------+---------------+--------------+
|      1 |              0|           10 |
|      2 |              1|              |
|      3 |              2|              |
+--------+---------------+--------------+

products      products_ctgs_relation
+------+      +------+-------------+
| p_id |      | p_id | category_id |
+------+      +------+-------------+
|     1|      |   3  |            3|
|     2|      |      |             |
|     3|      |      |             |
+------+      +------+-------------+

id=3的产品应该得到10%的折扣,因为他属于这个类别的一些父级有折扣的类别。 是否可以从产品表开始在 1 次查询中获取产品和折扣?即从产品中选择 p.* ..

最佳答案

没有直接的方法可以做到这一点。 mysql 不支持像 Oracle 或 SQL Server 那样的分层查询。

但是我用谷歌搜索并找到了这篇文章,它可能对你有帮助:

http://explainextended.com/2009/03/17/hierarchical-queries-in-mysql/

关于mysql - 与子类别的多对多产品类别关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17491052/

相关文章:

mysql - 将具有不同格式的字符串转换为日期

php - 准备使用选择查询失败的准备语句

php - SQL查询通过用户id返回用户名

sql - 复杂的 MySQL Order by 不工作

mysql - GROUP BY 一列中的多个文本匹配

php - 使用未知数量的参数创建 Laravel Eloquent Query

php - 在 PHP 中连接 MySQL 表

php - Mysql CURDATE() 不适用于时间戳类型

使用 JSON 数据类型的 Mysql JSON 嵌套数组

PHP 关键字搜索