假设一个表具有两个数字属性:a
和 b
。例如:
CREATE TABLE Test(a,b);
INSERT INTO Test VALUES(2,20);
INSERT INTO Test VALUES(1,10);
INSERT INTO Test VALUES(3,30);
以下查询在某些 DBMS(例如 Oracle)中是非法的,但在 SQLite 中是合法的:
SELECT a, min(b) FROM Test;
对于上述数据,查询会生成一个由一行 (1, 10) 组成的表。换句话说,我们成功找到了与b
的最小值对应的a
的值。问题是:这种行为是否得到保证,或者 SQLite 有权任意选择 a
的值?
最佳答案
此行为是有保证的 since version 3.7.11 .
关于sql - 在 SQLite 中混合属性和聚合函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30509884/