gpt4 book ai didi

php - 如何从MySQL中的单个表中选择依赖列

转载 作者:行者123 更新时间:2023-11-29 03:10:54 27 4
gpt4 key购买 nike

我有这样的 products_table:

prod_ID (int), sub_of (int), category (int), price (decimal 10,2), 排序(整数)

主要产品的 sub_of 设置为 0,类别设置为其他表中的某个 ID,没有设置价格。只有子产品有价格,没有类别。

我的英文不好,所以我会尝试用SQL问这个问题:

我要

SELECT * 
FROM products_table
WHERE category IN (3, 158, 159, 160, 249)
AND sub_of = 0
AND price >= 27
AND price <= 34
ORDER BY sort+0, sort

我该怎么做?

我在 SELECT 中尝试使用 SELECT,但没有选择正确的价格:

$where = ajax: AND price >= 27 AND price <= 34
$daOrder = SORT BY sort+0, sort

$query = "SELECT *
FROM ".PRODUCTS_TABLE."
WHERE prod_ID IN (
SELECT sub_of
FROM ".PRODUCTS_TABLE."
WHERE sub_of IN (
SELECT prod_ID
FROM ".PRODUCTS_TABLE."
WHERE category IN (".$allCats.")
)
".mysql_escape_string($where)." {$daOrder}
)";

编辑:

我需要一些类别和价格范围内的所有主要产品(sub_of=0),然后我将列出每个主要产品的所有子产品。

最佳答案

我会选择自助加入:

SELECT *
FROM products_table as main_products
LEFT JOIN products_table as sub_products
ON sub_products.sub_of = main_products.prod_id
WHERE main_products.category IN (3, 158, 159, 160, 249)
AND sub_products.price >= 27
AND sub_products.price <= 34
ORDER BY sub_products.sort

关于php - 如何从MySQL中的单个表中选择依赖列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8615798/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com