从MySQL表获取记录时将结果获取为NULL

从MySQL表获取记录时将结果获取为NULL,mysql,Mysql,我试图根据多个ID获取记录,并使用PHP和MySQL计算最小值。我在解释下面的问题 SELECT MIN(min_price) AS base_price,entity_id FROM catalog_product_index_price WHERE entity_id IN ('31439,31440,31441,31442,31443,31444,31445,31446,31447,31448,31469,31470,31471, 31472,31473') 这里我试图根据这

我试图根据多个ID获取记录,并使用PHP和MySQL计算最小值。我在解释下面的问题

SELECT MIN(min_price) AS base_price,entity_id 
FROM catalog_product_index_price 
WHERE entity_id IN
    ('31439,31440,31441,31442,31443,31444,31445,31446,31447,31448,31469,31470,31471,
31472,31473')

这里我试图根据这些多个
实体id
计算
min\u price
列的最小值。但是在我的例子中,一些
实体id
比如
31439144031441
catalog\u product\u index\u price
表中没有任何记录,因此
基本价格和实体id
的最终结果都是
NULL
。我需要计算那些只有记录的
实体的最低价格。

您只能计算有值的列

此外,如果实体id是数字字段,则需要删除引号

例如:

SELECT MIN(min_price) AS base_price,entity_id 
FROM catalog_product_index_price 
WHERE entity_id IN (31439, 31440, 31441, 31442, 31443, 31444, 31445, 31446, 31447, 31448, 31469 ,31470, 31471, 31472, 31473)
AND min_price > 0;

您是否尝试添加条件min_price不为NULL的位置?请删除倒逗号以获取进一步帮助,请参阅
SELECT MIN(min_price) AS base_price,entity_id 
FROM catalog_product_index_price 
WHERE entity_id IN
    ('31439,31440,31441,31442,31443,31444,31445,31446,31447,31448,31469,31470,31471,
31472,31473')
AND min_price is not null;