123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- # Copyright 2015 - 2019 The Cockroach Authors. All rights reserved.
- # Copyright Materialize, Inc. and contributors. All rights reserved.
- #
- # Use of this software is governed by the Business Source License
- # included in the LICENSE file at the root of this repository.
- #
- # As of the Change Date specified in that file, in accordance with
- # the Business Source License, use of this software will be governed
- # by the Apache License, Version 2.0.
- #
- # This file is derived from the logic test suite in CockroachDB. The
- # original file was retrieved on June 10, 2019 from:
- #
- # https://github.com/cockroachdb/cockroach/blob/d2f7fbf5dd1fc1a099bbad790a2e1f7c60a66cc3/pkg/sql/logictest/testdata/logic_test/where
- #
- # The original source code is subject to the terms of the Apache
- # 2.0 license, a copy of which can be found in the LICENSE file at the
- # root of this repository.
- mode cockroach
- simple conn=mz_system,user=mz_system
- ALTER SYSTEM SET unsafe_enable_table_keys = true
- ----
- COMPLETE 0
- statement ok
- CREATE TABLE kv (
- k INT PRIMARY KEY,
- v INT
- )
- statement ok
- INSERT INTO kv VALUES (1, 2), (3, 4), (5, 6), (7, 8)
- statement ok
- CREATE TABLE kvString (
- k TEXT PRIMARY KEY,
- v TEXT
- )
- statement ok
- INSERT INTO kvString VALUES ('like1', 'hell%'), ('like2', 'worl%')
- query II rowsort
- SELECT * FROM kv WHERE True
- ----
- 1 2
- 3 4
- 5 6
- 7 8
- query II
- SELECT * FROM kv WHERE False
- ----
- query II rowsort
- SELECT * FROM kv WHERE k IN (1, 3)
- ----
- 1 2
- 3 4
- query II
- SELECT * FROM kv WHERE v IN (6)
- ----
- 5 6
- query II rowsort
- SELECT * FROM kv WHERE k IN (SELECT k FROM kv)
- ----
- 1 2
- 3 4
- 5 6
- 7 8
- query II rowsort
- SELECT * FROM kv WHERE (k,v) IN (SELECT * FROM kv)
- ----
- 1 2
- 3 4
- 5 6
- 7 8
- query error column "nonexistent" does not exist
- SELECT * FROM kv WHERE nonexistent = 1
- query B
- SELECT 'hello' LIKE v FROM kvString WHERE k LIKE 'like%' ORDER BY k
- ----
- true
- false
- # query B
- # SELECT 'hello' SIMILAR TO v FROM kvString WHERE k SIMILAR TO 'like[1-2]' ORDER BY k
- # ----
- # true
- # false
- query B
- SELECT 'hello' ~ replace(v, '%', '.*') FROM kvString WHERE k ~ 'like[1-2]' ORDER BY k
- ----
- true
- false
- # Test mixed type tuple comparison.
- query II rowsort
- SELECT * FROM kv WHERE k IN (1, 5.0, 9)
- ----
- 1 2
- 5 6
- # Regression tests for materialize#22670.
- statement ok
- CREATE TABLE ab (a INT, b INT)
- statement ok
- INSERT INTO ab VALUES (1, 10), (2, 20), (3, 30), (4, NULL), (NULL, 50), (NULL, NULL)
- query II rowsort
- SELECT * FROM ab WHERE a IN (1, 3, 4)
- ----
- 1 10
- 3 30
- 4 NULL
- query II rowsort
- SELECT * FROM ab WHERE a IN (1, 3, 4, NULL)
- ----
- 1 10
- 3 30
- 4 NULL
- query II rowsort
- SELECT * FROM ab WHERE (a, b) IN ((1, 10), (3, 30), (4, 40))
- ----
- 1 10
- 3 30
- query II rowsort
- SELECT * FROM ab WHERE (a, b) IN ((1, 10), (4, NULL), (NULL, 50))
- ----
- 1 10
|