6.6 KiB
6.6 KiB
Summary
**No review yet**Minimized query
BEGIN TRANSACTION;
.print https://yewtu.be/watch?v=dQw4w9WgXcQ
PRAGMA writable_schema = NO;
ATTACH DATABASE ':memory:' AS aux15;
CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT);
INSERT INTO t1 VALUES (-round(like('_10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000_', CAST((-if(((2147483646 * 1) + 0), 1, 0, 1, 0, 1) - 0) AS DOUBLE PRECISION)), 0), 'Wernher', 10, 100);
INSERT INTO t1 VALUES (2, 'von', 20, 200);
INSERT INTO t1 VALUES (3, 'Braun', 30, 300);
CREATE INDEX t1bc ON t1(b, c);
PRAGMA writable_schema = ON;
.imposter t1bc t2
SELECT * FROM t2;
SELECT b, c FROM t1 ORDER BY b, c;
.quit
ATTACH DATABASE (':memory:' || '') AS aux87;
PRAGMA analysis_limit = '';
PRAGMA default_cache_size = -abs(NULL);
PRAGMA query_only = FALSE;
.shell pwd
create temp table t1(x);
insert into t1 values('amx');
insert into t1 values('anx');
insert into t1 values('amy');
insert into t1 values('bmy');
select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x';
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + likelihood(1,
0.0))) WHERE x IS NOT NULL;
SELECT SUM(x) FROM t1;
DETACH DATABASE aux87;
ALTER TABLE t1 RENAME COLUMN x TO x_r9111;
CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END;
ATTACH DATABASE ':memory:' AS aux87;
PRAGMA analysis_limit = '';
PRAGMA default_cache_size = -1000;
PRAGMA query_only = FALSE;
.shell pwd
create temp table t1(x);
insert into t1 values('amx');
insert into t1 values('anx');
insert into t1 values('amy');
insert into t1 values('bmy');
select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x';
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + 1)) WHERE x IS NOT NULL;
SELECT SUM(x) FROM t1;
DETACH DATABASE aux87;
ALTER TABLE t1 RENAME COLUMN x TO x_r9111;
CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END;
ATTACH DATABASE ':memory:' AS aux87;
PRAGMA analysis_limit = '';
PRAGMA default_cache_size = -1000;
PRAGMA query_only = FALSE;
.shell pwd
create temp table t1(x);
insert into t1 values('amx');
insert into t1 values('anx');
insert into t1 values('amy');
insert into t1 values('bmy');
select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x';
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + 1)) WHERE x IS NOT NULL;
SELECT SUM(x) FROM t1;
DETACH DATABASE aux87;
ALTER TABLE t1 RENAME COLUMN x TO x_r9111;
CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END;
ATTACH DATABASE ':memory:' AS aux87;
PRAGMA analysis_limit = '';
PRAGMA default_cache_size = -1000;
PRAGMA query_only = FALSE;
.shell pwd
create temp table t1(x);
insert into t1 values('amx');
insert into t1 values('anx');
insert into t1 values('amy');
insert into t1 values('bmy');
select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x';
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + 1)) WHERE x IS NOT NULL;
SELECT SUM(x) FROM t1;
DETACH DATABASE aux87;
ALTER TABLE t1 RENAME COLUMN x TO x_r9111;
CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END;
ANALYZE;
SELECT * FROM t1 AS a FULL JOIN t1 AS b ON a.rowid = b.rowid;
INSERT AND IGNORE INTO t1 VALUES (-1);
ANALYZE;
DETACH DATABASE aux15;
CREATE INDEX IF NOT EXISTS idx_t1_3835 ON t1(lower(x)) WHERE x > 0;
INSERT OR REPLACE INTO t1 VALUES ('x');
INSERT INTO t1 VALUES (NULL);
ALTER TABLE t1 RENAME /* PRAGMA defer_foreign_keys = 1; */ COLUMN x TO x_r5534;
SELECT COUNT(*) FROM t1;
VACUUM main;
ROLLBACK;
SELECT MAX(x) FROM t1;
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_2774 ON t1(x) WHERE x IS NOT NULL;
WITH a AS (SELECT * FROM t1), b AS (SELECT * FROM a), c AS (SELECT * FROM b), d AS (SELECT * FROM c) SELECT * FROM d;
ALTER TABLE t1 ADD COLUMN extra_6672 NONE DEFAULT CURRENT_TIMESTAMP;
DELETE FROM t1 WHERE 1;
REINDEX t1;
UPDATE t1 SET x = NULL;
ALTER TABLE t1 RENAME TO t1_r5158;
INSERT OR REPLACE INTO t1 VALUES (0);
PRAGMA writable_schema = 1;
SELECT MAX(x) FILTER (WHERE x IS NOT NULL) OVER (ORDER BY x RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING EXCLUDE NO OTHERS) FROM t1;
INSERT OR ROLLBACK INTO t1 VALUES (0);
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_1852 ON t1(x COLLATE NOCASE);
SELECT x, (SELECT AVG(x) FROM t1) AS avg_val FROM t1;
SELECT * FROM t1 AS a LEFT JOIN t1 AS b ON a.rowid = b.rowid;
SELECT * FROM t1 WHERE EXISTS (SELECT 1 FROM t1 WHERE x = NULL);
SELECT * FROM t1 WHERE x = (SELECT x FROM t1 t2 WHERE t2.x = t1.x LIMIT 1);
CREATE TABLE T1 (
A VARCHAR(10) PRIMARY KEY,
B VARCHAR(15) UNIQUE,
C BIGINT
);
CREATE TABLE T2 (
X VARCHAR(20) PRIMARY KEY,
A VARCHAR(10),
FOREIGN KEY (A) REFERENCES T1(A)
);
INSERT INTO T1 VALUES ('a', 'p', 9999999999999);
INSERT INTO T1 VALUES ('b', 'q', -9999999999999);
INSERT INTO T2 VALUES ('m', 'a');
INSERT INTO T2 VALUES ('n', 'b');
SELECT T2.X, T1.C FROM T2 INNER JOIN T1 ON T2.A = T1.A WHERE T1.C > -1000000000000;
ALTER TABLE T1 RENAME COLUMN A TO A_r8508;
Actual output
https://yewtu.be/watch?v=dQw4w9WgXcQ
CREATE TABLE "t2"("b","c","_ROWID_",PRIMARY KEY("b","c","_ROWID_"))WITHOUT ROWID;
WARNING: writing to an imposter table will corrupt the "t1bc" index!
Braun|30|3
von|20|2
Braun|30
von|20
Expectation
Flag