mirror of
https://github.com/sqlite/sqlite.git
synced 2026-10-28 09:46:20 +08:00
Enable an ORDER BY clause to refer to columns in outer queries.
FossilOrigin-Name: ef9b4b1e4690c889c48f4e725d42127c46f60c6bf2023ae79bf1e9c6c83368ec
This commit is contained in:
1 parent
76f1fe2942
commit
e2bb4cf412
4 files changed
+16
-23
No files matched your search
@@ -1,5 +1,5 @@
|
||||
C Use\sthe\scorrect\swildcard\scharacter\sin\ssqlite3_strlike()\sin\sthe\sprevious\ncheck-in.
|
||||
D 2025-12-13T23:18:04.144
|
||||
C Enable\san\sORDER\sBY\sclause\sto\srefer\sto\scolumns\sin\souter\squeries.
|
||||
D 2025-12-15T11:59:47.350
|
||||
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
@@ -734,7 +734,7 @@ F src/pragma.c ecec75795c1821520266e4f93fa8840cce48979af532db06f085e36a7813860f
|
||||
F src/prepare.c f6a6e28a281bd1d1da12f47d370a81af46159b40f73bf7fa0b276b664f9c8b7d
|
||||
F src/printf.c b1b29b5e58e1530d5daeee5963d3c318d8ab2d7e38437580e28755753e0c1ded
|
||||
F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
|
||||
F src/resolve.c 8d53771eb51a4ab5f970150c3a70969d8db79cd04a8774c2d296bbcf471a0dd0
|
||||
F src/resolve.c 47aa7fdc9ec4c19b103ac5e79d7887d30119b5675309facf5eed1118391c868b
|
||||
F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
|
||||
F src/select.c 344518c1bba9c4636bf651b7642304abd2e7075ba35feb4bae42a51e5efe991f
|
||||
F src/shell.c.in e584486e622dea388ea18e34e31bc873e24c6c24f337f012b4bb21260a735dee
|
||||
@@ -1303,7 +1303,7 @@ F test/insert.test 97cfb30b83ca1622b9422a1e4c4831b4cb767cf5d654660945036d1e72067
|
||||
F test/insert2.test 4d14b8f1b810a41995f6286b64a6943215d52208
|
||||
F test/insert3.test 1b7db95a03ad9c5013fdf7d6722b6cd66ee55e30
|
||||
F test/insert4.test 2bf81535a990c969665d66db51fcf76c23499b39893b5109f413d1de4ad34cd3
|
||||
F test/insert5.test 394f96728d1258f406fe5f5aeb0aaf29487c39a6
|
||||
F test/insert5.test 79f6b6efd0d3db5f4e3ff442300b7d9e7185adb345b29aacc3ea5a9c58ab9beb
|
||||
F test/insertfault.test ac63d14ea3b49c573673a572f4014b9117383a03e497c58f308b5c776e4a7f74
|
||||
F test/instr.test 67ba309e9697c24a304e98a7c8f372456177dd4e32237d2a305e1e05f7bb79c2
|
||||
F test/instrfault.test 95e28efade652e6d51ae11b377088fe523a581a07ec428009e152a4dd0e0f44c
|
||||
@@ -2184,8 +2184,8 @@ F tool/version-info.c 33d0390ef484b3b1cb685d59362be891ea162123cea181cb8e6d2cf6dd
|
||||
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
||||
F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98
|
||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||
P 19cc0522e2255f21f6fb6af1442c2ba122fdd4deacd9ea2c181ce9e597b88770
|
||||
R 7a73b7f1bc5ed629cd68f0086c0f9453
|
||||
P 87bca1250c5e660debbb29c5fabb89082c2d2059fc8b5851e1b1a519c3be7fc1
|
||||
R f004c13af1a1be21bad8d4c7d8ba20e0
|
||||
U drh
|
||||
Z 52ad00c135771aee4324337abaa21212
|
||||
Z 5c74dbec152b78ca8dccf7f221dabb42
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
+1
-1
@@ -1 +1 @@
|
||||
87bca1250c5e660debbb29c5fabb89082c2d2059fc8b5851e1b1a519c3be7fc1
|
||||
ef9b4b1e4690c889c48f4e725d42127c46f60c6bf2023ae79bf1e9c6c83368ec
|
||||
@@ -2011,10 +2011,6 @@ static int resolveSelectStep(Walker *pWalker, Select *p){
|
||||
}
|
||||
#endif
|
||||
|
||||
/* The ORDER BY and GROUP BY clauses may not refer to terms in
|
||||
** outer queries
|
||||
*/
|
||||
sNC.pNext = 0;
|
||||
sNC.ncFlags |= NC_AllowAgg|NC_AllowWin;
|
||||
|
||||
/* If this is a converted compound query, move the ORDER BY clause from
|
||||
|
||||
+8
-11
@@ -96,22 +96,19 @@ do_test insert5-2.8 {
|
||||
}
|
||||
} {1}
|
||||
|
||||
# UPDATE: Using a column from the outer query (main.id) in the GROUP BY
|
||||
# or ORDER BY of a sub-query is no longer supported.
|
||||
#
|
||||
# do_test insert5-2.9 {
|
||||
# uses_temp_table {
|
||||
# INSERT INTO b
|
||||
# SELECT * FROM main
|
||||
# WHERE id > 10 AND (SELECT count(*) FROM v2 GROUP BY main.id)
|
||||
# }
|
||||
# } {}
|
||||
do_test insert5-2.9 {
|
||||
catchsql {
|
||||
INSERT INTO b
|
||||
SELECT * FROM main
|
||||
WHERE id > 10 AND (SELECT count(*) FROM v2 GROUP BY main.id)
|
||||
}
|
||||
} {1 {no such column: main.id}}
|
||||
} {0 {}}
|
||||
do_execsql_test insert5-2.10 {
|
||||
CREATE TABLE t1(a INT);
|
||||
INSERT INTO t1 VALUES(2);
|
||||
CREATE TABLE t2(c INT, d INT);
|
||||
INSERT INTO t2 VALUES(3,4),(10,NULL);
|
||||
SELECT (SELECT c FROM t2 ORDER BY coalesce(d,a) LIMIT 1) FROM t1;
|
||||
} {10}
|
||||
|
||||
finish_test
|
||||
Reference in new issue
Block a user