我是新来的。我试图从表[mod\u productos]中从同一供应商[vproveredor]中选择一个products列[vproducto],但得到错误[subquery返回超过1行]
我正在尝试使用以下代码:
SELECT vProducto
FROM mod_productos
WHERE vProducto IN (
SELECT vProducto
FROM mod_productos
WHERE vProveedor="Telefonica"
);
怎么做有什么帮助吗?提前谢谢。。。
1条答案
按热度按时间f2uvfpb91#
上面的查询很好,您在这里的语法不应该出现“subquery returns more one row”异常。
当遇到多行异常时,通常是将select子查询用作列的结果。
例如
在本例中,“subquerycolumn”只能返回一行,否则会导致多行错误。
虽然我不建议这样做(你期望不止一排吗?),您可以通过将我的上述示例修改为:
注意我添加到子查询的“top 1”。这样可以确保只返回一行——但是——要知道您的数据。如果你不期待不止一行,但你收到它,看看为什么。