---
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
## Summary
|
||||
<!--Explain briefly what goes wrong and explain why you believe this is a bug and not the intended behavior of SQLite (if it is not a crash).-->**No review yet**
|
||||
|
||||
## Minimized query
|
||||
|
||||
```sql
|
||||
PRAGMA locking_mode;
|
||||
PRAGMA defer_foreign_keys = CAST(last_insert_rowid() AS TINYINT);
|
||||
CREATE TABLE T (
|
||||
a NUMERIC,
|
||||
b TEXT
|
||||
);
|
||||
INSERT INTO T VALUES ('a','2020-01-01'), ('b','2026-01-01');
|
||||
SELECT a,
|
||||
CAST(
|
||||
(julianday('now')-julianday(b))/365.25
|
||||
AS INTEGER
|
||||
) AS c
|
||||
FROM T;
|
||||
SELECT * FROM T;
|
||||
ANALYZE T;
|
||||
INSERT INTO T VALUES (NULL, NULL);
|
||||
INSERT INTO T VALUES (NULL, NULL);
|
||||
SELECT COUNT(*) FILTER (WHERE a IS NOT NULL), SUM(rowid) FILTER (WHERE a > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(a) FILTER (WHERE a > 0 AND a < 100), COUNT(*) FILTER (WHERE typeof(a) = "text") FROM T;
|
||||
SELECT COUNT(*) FILTER (WHERE a IS NOT NULL), SUM(rowid) FILTER (WHERE a > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(a) FILTER (WHERE a > 0 AND a < 100), COUNT(*) FILTER (WHERE typeof(a) = "text") FROM T;
|
||||
CREATE TABLE T1 (
|
||||
A VARCHAR(10) PRIMARY KEY,
|
||||
B VARCHAR(15) UNIQUE,
|
||||
C INTEGER
|
||||
);
|
||||
CREATE TABLE main.T2 (
|
||||
X VARCHAR(20) PRIMARY KEY,
|
||||
A VARCHAR(10) NOT NULL UNIQUE,
|
||||
FOREIGN KEY (A) REFERENCES T1(A)
|
||||
);
|
||||
INSERT INTO T1 VALUES ('a', 'p', -2147483648);
|
||||
INSERT INTO T1 VALUES ('b', 'q', 2147483647);
|
||||
INSERT INTO T2 VALUES ('m', 'a');
|
||||
INSERT INTO T2 VALUES ('n', 'b');
|
||||
SELECT T2.X, T1.B, T1.C FROM T2, T1 WHERE T2.A = T1.A AND T1.C >= 0;
|
||||
ALTER TABLE T1 DROP COLUMN A;
|
||||
UPDATE T SET b = b + 1;
|
||||
SELECT COUNT(*) FILTER (WHERE b IS NOT NULL), SUM(rowid) FILTER (WHERE b > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(b) FILTER (WHERE b > 0 AND b < 100), COUNT(*) FILTER (WHERE typeof(b) = "text") FROM T;
|
||||
INSERT INTO T2 VALUES (NULL, 'x') ON CONFLICT(X) DO UPDATE SET X = excluded.X, A = excluded.A;
|
||||
INSERT OR ROLLBACK INTO T VALUES (0, 0);
|
||||
ALTER TABLE T1 RENAME TO T1_r2954;
|
||||
ALTER TABLE T RENAME COLUMN a TO a_r6522;
|
||||
```
|
||||
|
||||
## Actual output
|
||||
|
||||
```sql
|
||||
3.39.0 2022-05-10 23:28:12 764b71267e0b31ff7eaf2a0def7526a1a02dce4d5b456dea060d97ed342ealt1
|
||||
```
|
||||
|
||||
## Expectation
|
||||
|
||||
```sql
|
||||
3.51.1 2025-11-28 17:28:25 281fc0e9afc38674b9b0991943b9e9d1e64c6cbdb133d35f6f5c87ff6af38a88 (64-bit)
|
||||
```
|
||||
|
||||
## Flag
|
||||
|
||||
```
|
||||
-version
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user