MySQL ClickHouse不同于SQL的語(yǔ)法介紹
下面只展示和MySQL或HIVE區(qū)別較大的語(yǔ)法
例如ClickHouse建庫(kù)語(yǔ)法和MySQL幾乎1卵樣的不予展示
ClickHouse的JOIN邏輯
# 創(chuàng)建左表 CREATE TABLE default.temp_left( `a` String COMMENT '匹配鍵' )ENGINE = MergeTree ORDER BY (a); INSERT INTO default.temp_left SELECT 'A1' AS a UNION ALL SELECT 'A1' AS a UNION ALL SELECT 'A2' AS a UNION ALL SELECT 'A3' AS a; # 創(chuàng)建右表 CREATE TABLE default.temp_right( `a` String COMMENT '匹配鍵', `b` Nullable(UInt32), `c` UInt32 )ENGINE = MergeTree ORDER BY (a); INSERT INTO default.temp_right SELECT 'A2' AS a,9 AS b,8 AS c UNION ALL SELECT 'A3' AS a,9 AS b,8 AS c UNION ALL SELECT 'A4' AS a,9 AS b,8 AS c; # 左聯(lián) SELECT * FROM default.temp_left le LEFT JOIN default.temp_right ri ON le.a=ri.a
左聯(lián)測(cè)試結(jié)果
在右表中,b
允許空,a
和c
冇允許空 左聯(lián)后,聯(lián)不上的a
是空字符串,聯(lián)不上的b
是NULL
,聯(lián)不上的c
是0
INSERT SELECT
INSERT INTO t2 WITH a AS (SELECT * FROM t1) SELECT * FROM a;
和HIVE、MySQL等不一樣,ClickHouse的INSERT
寫在WITH
之前
臨時(shí)表
- 當(dāng)回話結(jié)束時(shí),臨時(shí)表將隨會(huì)話一起消失
- 臨時(shí)表僅能用Memory表引擎
- 無(wú)法為臨時(shí)表指定數(shù)據(jù)庫(kù),它是在數(shù)據(jù)庫(kù)之外創(chuàng)建的
- 當(dāng)查詢沒(méi)有指定庫(kù),且臨時(shí)表與另一個(gè)表名相同 時(shí),會(huì)優(yōu)先使用臨時(shí)表
CREATE TEMPORARY TABLE temp_t(`a` String,`b` Int32); INSERT INTO temp_t VALUES ('AB',3),('CC',4); SELECT * FROM temp_t; # 結(jié)束會(huì)話后,臨時(shí)表不存在
窗口函數(shù)
CREATE TEMPORARY TABLE sales( name String COMMENT '產(chǎn)品', city String COMMENT '城市', sale Int32 COMMENT '銷量'); INSERT INTO sales VALUES ('椰子','佛山',99),('雪梨','佛山',77),('蘋果','佛山',88), ('椰子','廣州',80),('雪梨','廣州',80),('蘋果','廣州',70);
SELECT city ,groupArray(name) OVER (PARTITION BY city) FROM sales;
SELECT city, name, sale, rank() OVER(PARTITION BY city ORDER BY sale DESC) FROM sales;
單引號(hào)和雙引號(hào)
多數(shù)情況使用單引號(hào)
SELECT "abc"; # 報(bào)錯(cuò) SELECT 'abc'; # 正常查詢,返回字符串
CREATE TABLE default.temp_t( `a` String COMMENT "匹配鍵" )ENGINE=Log; # 字段注釋使用雙引號(hào)報(bào)錯(cuò) CREATE TABLE default.temp_t( `a` String COMMENT '匹配鍵' )ENGINE=Log; # 正常建表
到此這篇關(guān)于MySQL ClickHouse不同于SQL的語(yǔ)法介紹的文章就介紹到這了,更多相關(guān)MySQL ClickHouse內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于Mysql-connector-java驅(qū)動(dòng)版本問(wèn)題總結(jié)
這篇文章主要介紹了Mysql-connector-java驅(qū)動(dòng)版本問(wèn)題,本文給大家介紹的很詳細(xì),通過(guò)原因說(shuō)明問(wèn)題小結(jié)個(gè)人建議給大家展示的很好,需要的朋友可以參考下2021-06-06Mysql數(shù)據(jù)庫(kù)之索引優(yōu)化
MySQL憑借著出色的性能、低廉的成本、豐富的資源,已經(jīng)成為絕大多數(shù)互聯(lián)網(wǎng)公司的首選關(guān)系型數(shù)據(jù)庫(kù)。本文給大家介紹mysql數(shù)據(jù)庫(kù)之索引優(yōu)化,感興趣的朋友一起學(xué)習(xí)吧2016-03-03通過(guò)兩種方式增加從庫(kù)——不停止mysql服務(wù)
現(xiàn)在生產(chǎn)環(huán)境MySQL數(shù)據(jù)庫(kù)是一主一從,由于業(yè)務(wù)量訪問(wèn)不斷增大,故再增加一臺(tái)從庫(kù)。前提是不能影響線上業(yè)務(wù)使用,也就是說(shuō)不能重啟MySQL服務(wù),為了避免出現(xiàn)其他情況,選擇在網(wǎng)站訪問(wèn)量低峰期時(shí)間段操作2015-11-11mysql 導(dǎo)出select語(yǔ)句結(jié)果到excel文件遇到問(wèn)題及解決方法
這篇文章主要介紹了mysql 導(dǎo)出select語(yǔ)句結(jié)果到excel文件遇到問(wèn)題及解決方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09