1

我想使用数据中的一个字段填充一个下拉框,我只想为一个表中的一组数据返回唯一值。Group by 在我使用的多面体数据库中没有实现。名称是表的主键,所有名称都是唯一的。

我正在尝试运行此查询:

SELECT DISTINCT userstring05
FROM digital
WHERE userstring05 LIKE '_%'
  AND name LIKE '200-B%'

但我得到这个错误:

用于非独特选择的 DISTINCT 子句

4

2 回答 2

0

你不需要使用不同的。使用 group by 得到你的结果。

SELECT userstring05 FROM digital WHERE userstring05 like '_%'
AND name LIKE '200-B%' GROUP BY userstring05

这将为您提供所需的结果。我没有测试它,因为你没有提供一些示例数据,但应该没问题

于 2015-10-05T16:05:27.800 回答
0

来自ENEA 多面体参考

如果select 语句可能返回重复的行,则包含distinct子句将产生错误。只有输出列包含from子句中 指定的表的所有主键列的select语句才能使用distinct子句成功执行。

所以我猜这个 DBMS 并没有真正实现distinct,因为这个约束抵消了使用这个子句的兴趣。除非您加入没有任何主键的表,否则可能吗?

编辑:似乎这个资源是旧的。您使用的是哪个版本的多面体?

于 2015-10-05T16:11:53.843 回答