1

我想从表(产品)中选择行,但该表使用 JOIN 语句链接到另一个表(股票)。

在 products 表中有 2 个重要字段,SKU 和 minimum_stock。库存表中有 SKU(与产品的关系)和数量

现在,我只想在表中存在 SKU 并且数量大于产品中的 minimum_stock 时才从产品中选择行。

像这样:

SELECT * 
FROM products
INNER JOIN stock ON products.SKU = stock.SKU
WHERE products.minimum_stock.value > stock.qty.value;

显然这段代码不起作用。

有人可以帮助我吗?

提前致谢。

4

1 回答 1

1

如果您的表格如下所示:

产品:

  • 库存单位
  • minimum_stock
  • (...其他列...)

股票

  • 库存单位
  • 数量
  • (...其他列...)

您的查询不必在列末尾有 .value。事实上,这就是让它不起作用的原因。

执行以下操作:

SELECT * 
FROM products
INNER JOIN stock ON products.SKU = stock.SKU
WHERE products.minimum_stock > stock.qty;

SQL Fiddle Demo

于 2013-10-08T19:40:59.967 回答