You've already forked mariadb-columnstore-engine
							
							
				mirror of
				https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
				synced 2025-11-03 17:13:17 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			67 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#
 | 
						|
# Some basic UPDATE statements #
 | 
						|
# Author: Susil, susil.behera@mariadb.com
 | 
						|
#
 | 
						|
-- source ../include/have_columnstore.inc
 | 
						|
#
 | 
						|
--disable_warnings
 | 
						|
DROP DATABASE IF EXISTS mcs30_db1;
 | 
						|
--enable_warnings
 | 
						|
 | 
						|
CREATE DATABASE mcs30_db1;
 | 
						|
USE mcs30_db1;
 | 
						|
 | 
						|
CREATE TABLE t1
 | 
						|
( c1  INT, c2 CHAR(10), c3 TEXT DEFAULT 'ccc' ) ENGINE=Columnstore;
 | 
						|
INSERT INTO t1 (c1, c2) VALUES (1, 'a'), (1, 'b'), (2, 'b');
 | 
						|
UPDATE t1 SET c2 = 'b', c3 = 'bbb' WHERE c1 = 2;
 | 
						|
SELECT * FROM t1;
 | 
						|
 | 
						|
INSERT INTO t1 VALUES (NULL, NULL, NULL);
 | 
						|
INSERT INTO t1 (c1, c2) VALUES (NULL, NULL);
 | 
						|
 | 
						|
 | 
						|
UPDATE t1 SET c1 = c1+1, c3 = 'bbb' WHERE c2 = 'b';
 | 
						|
SELECT * FROM t1;
 | 
						|
 | 
						|
UPDATE t1 SET c2 = 'd' WHERE c3 IN ('bbb', 'ccc');
 | 
						|
SELECT * FROM t1;
 | 
						|
 | 
						|
UPDATE t1 SET c2 = 'e', c3 = 'eee' WHERE c1 > 1 AND c3 = 'bbb';
 | 
						|
SELECT * FROM t1;
 | 
						|
 | 
						|
UPDATE t1 SET c2 = NULL WHERE c3 = 'ccc';
 | 
						|
SELECT * FROM t1;
 | 
						|
 | 
						|
#BUG<ID>
 | 
						|
#Looks like a bug as result deffers from innodb
 | 
						|
#UPDATE t1 SET c3 = NULL WHERE c1 IS NULL;
 | 
						|
#SELECT * FROM t1;
 | 
						|
 | 
						|
DROP TABLE t1;
 | 
						|
 | 
						|
# Test variables
 | 
						|
CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL) ENGINE=Columnstore;
 | 
						|
INSERT INTO t1 VALUES (1,1),(1,2),(1,3),(3,1),(3,2),(3,3),(3,1),(3,2),(3,3),(2,1),(2,2),(2,3);
 | 
						|
SET @tmp=0;
 | 
						|
UPDATE t1 SET b=(@tmp:=@tmp+1);
 | 
						|
SELECT * FROM t1 ORDER BY a, b;
 | 
						|
 | 
						|
# Update by select from another Columnstore table 
 | 
						|
CREATE TABLE t2 (a INT NOT NULL, b INT NOT NULL) ENGINE=Columnstore;
 | 
						|
INSERT INTO t2 VALUES (1,1),(1,2),(1,3);
 | 
						|
UPDATE t1 SET b=(SELECT 5);
 | 
						|
SELECT * FROM t1 ORDER BY a, b;
 | 
						|
UPDATE t1 SET b=(SELECT b FROM t2 ORDER BY b LIMIT 1);
 | 
						|
SELECT * FROM t1 ORDER BY a, b;
 | 
						|
SELECT * FROM t2 ORDER BY a, b;
 | 
						|
 | 
						|
#BUG<ID>
 | 
						|
# Update by select from another Innodb table
 | 
						|
#CREATE TABLE t3 (a INT NOT NULL, b INT NOT NULL) ENGINE=Innodb;
 | 
						|
#INSERT INTO t3 VALUES (1,1),(1,2),(1,3);
 | 
						|
#UPDATE t1 SET b=(SELECT b FROM t3 ORDER BY b LIMIT 1);
 | 
						|
 | 
						|
# Clean up
 | 
						|
DROP DATABASE IF EXISTS mcs30_db1;
 |