mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-16 12:44:42 +00:00
59 KiB
59 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | ad252bbb4f |
40 | ANSI uyumluluğu |
ClickHouse SQL Lehçesinin ANSI SQL uyumluluğu
!!! note "Not" Bu makale Tablo 38, “Feature taxonomy and definition for mandatory features”, Annex F of ISO/IEC CD 9075-2:2013.
Davranış farklılıkları
Aşağıdaki tabloda, sorgu özelliği ClickHouse çalışır, ancak ANSI SQL'DE belirtildiği gibi davranır durumlarda listeler.
Feature ID | Özellik Adı | Fark |
---|---|---|
E011 | Sayısal veri türleri | Dönem ile sayısal literal yaklaşık olarak yorumlanır (Float64 ) tam yerine (Decimal ) |
E051-05 | Seçme öğeler yeniden adlandırılabilir | Öğe yeniden adlandırmaları, yalnızca seçme sonucundan daha geniş bir görünürlük kapsamına sahiptir |
E141-01 | NOT NULL kısıtlamaları | NOT NULL tablo sütunları için varsayılan olarak ima edilir |
E011-04 | Aritmetik operat operatorsörler | ClickHouse işaretli aritmetik yerine taşar ve sonuç veri türünü özel kurallara göre değiştirir |
Özellik Durumu
Feature ID | Özellik Adı | Durum | Yorum |
---|---|---|---|
E011 | Sayısal veri türleri | Kısmi{.text-warning} | |
E011-01 | Tamsayı ve SMALLİNT veri türleri | Evet {.text-success} | |
E011-02 | Gerçek, çift hassas ve FLOAT veri türleri veri türleri | Kısmi {.text-warning} | FLOAT(<binary_precision>) , REAL ve DOUBLE PRECISION desteklenmiyor |
E011-03 | Ondalık ve sayısal veri türleri | Kısmi {.text-warning} | Sadece DECIMAL(p,s) desteklenir, değil NUMERIC |
E011-04 | Aritmetik operat operatorsörler | Evet {.text-success} | |
E011-05 | Sayısal karşılaştırma | Evet {.text-success} | |
E011-06 | Sayısal veri türleri arasında örtülü döküm | Hayır {.text-danger} | ANSI SQL, sayısal türler arasında rasgele örtülü döküm yapılmasına izin verirken, ClickHouse, örtülü döküm yerine birden fazla aşırı yüke sahip işlevlere dayanır |
E021 | Karakter dizesi türleri | Kısmi{.text-warning} | |
E021-01 | Karakter veri türü | Hayır {.text-danger} | |
E021-02 | Karakter değişken veri türü | Hayır {.text-danger} | String benzer şekilde davranır, ancak parantez içinde uzunluk sınırı olmadan |
E021-03 | Karakter değişmezleri | Kısmi {.text-warning} | Ardışık değişmezlerin ve karakter seti desteğinin otomatik olarak birleştirilmesi yok |
E021-04 | CHARACTER_LENGTH işlevi | Kısmi {.text-warning} | Hayır USING yan |
E021-05 | OCTET_LENGTH işlevi | Hayır {.text-danger} | LENGTH benzer şekilde davranır |
E021-06 | SUBSTRING | Kısmi {.text-warning} | İçin destek yok SIMILAR ve ESCAPE CLA ,us ,es, no SUBSTRING_REGEX varyant |
E021-07 | Karakter birleştirme | Kısmi {.text-warning} | Hayır COLLATE yan |
E021-08 | Üst ve alt fonksiyonlar | Evet {.text-success} | |
E021-09 | TRİM fonksiyonu | Evet {.text-success} | |
E021-10 | Sabit uzunlukta ve değişken uzunlukta karakter dizesi türleri arasında örtülü döküm | Hayır {.text-danger} | ANSI SQL, dize türleri arasında rasgele örtük döküm yapılmasına izin verirken, ClickHouse, örtük döküm yerine birden fazla aşırı yüke sahip işlevlere dayanır |
E021-11 | Pozisyon fonksiyonu | Kısmi {.text-warning} | İçin destek yok IN ve USING CLA ,us ,es, no POSITION_REGEX varyant |
E021-12 | Karakter karşılaştırma | Evet {.text-success} | |
E031 | Tanıtıcılar | Kısmi{.text-warning} | |
E031-01 | Ayrılmış tanımlayıcılar | Kısmi {.text-warning} | Unicode literal desteği sınırlıdır |
E031-02 | Küçük harf tanımlayıcıları | Evet {.text-success} | |
E031-03 | Sondaki alt çizgi | Evet {.text-success} | |
E051 | Temel sorgu belirtimi | Kısmi{.text-warning} | |
E051-01 | SELECT DISTINCT | Evet {.text-success} | |
E051-02 | GROUP BY fık clausera | Evet {.text-success} | |
E051-04 | GROUP BY içinde olmayan sütunlar içerebilir <select list> |
Evet {.text-success} | |
E051-05 | Seçme öğeler yeniden adlandırılabilir | Evet {.text-success} | |
E051-06 | Fık HAVİNGRA olması | Evet {.text-success} | |
E051-07 | Nitelikli * seçme listesinde | Evet {.text-success} | |
E051-08 | From madd theesindeki korelasyon adı | Evet {.text-success} | |
E051-09 | FROM yan tümcesinde sütunları Yeniden Adlandır | Hayır {.text-danger} | |
E061 | Temel yüklemler ve arama koşulları | Kısmi{.text-warning} | |
E061-01 | Karşılaştırma yüklemi | Evet {.text-success} | |
E061-02 | Yüklem arasında | Kısmi {.text-warning} | Hayır SYMMETRIC ve ASYMMETRIC yan |
E061-03 | Değerler listesi ile yüklemde | Evet {.text-success} | |
E061-04 | Yüklem gibi | Evet {.text-success} | |
E061-05 | Yüklem gibi: kaçış maddesi | Hayır {.text-danger} | |
E061-06 | Boş yüklem | Evet {.text-success} | |
E061-07 | Sayısal karşılaştırma yüklemi | Hayır {.text-danger} | |
E061-08 | Var yüklemi | Hayır {.text-danger} | |
E061-09 | Karşılaştırma yükleminde alt sorgular | Evet {.text-success} | |
E061-11 | Yüklemde alt sorgular | Evet {.text-success} | |
E061-12 | Sayısal karşılaştırma yükleminde alt sorgular | Hayır {.text-danger} | |
E061-13 | İlişkili alt sorgular | Hayır {.text-danger} | |
E061-14 | Arama koşulu | Evet {.text-success} | |
E071 | Temel sorgu ifadeleri | Kısmi{.text-warning} | |
E071-01 | Sendika farklı tablo operatörü | Hayır {.text-danger} | |
E071-02 | UNİON ALL table operat operatoror | Evet {.text-success} | |
E071-03 | Dist DİSTİNCTİNC tablet table operatörü hariç | Hayır {.text-danger} | |
E071-05 | Tablo operatörleri ile birleştirilen sütunların tam olarak aynı veri türüne sahip olması gerekmez | Evet {.text-success} | |
E071-06 | Alt sorgularda tablo işleçleri | Evet {.text-success} | |
E081 | Temel ayrıcalıklar | Kısmi{.text-warning} | Çalışmalar sürüyor |
E091 | Set fonksiyonları | Evet{.text-success} | |
E091-01 | AVG | Evet {.text-success} | |
E091-02 | COUNT | Evet {.text-success} | |
E091-03 | MAX | Evet {.text-success} | |
E091-04 | MIN | Evet {.text-success} | |
E091-05 | SUM | Evet {.text-success} | |
E091-06 | Tüm niceleyici | Hayır {.text-danger} | |
E091-07 | Farklı niceleyici | Kısmi {.text-warning} | Tüm toplama işlevleri desteklenmiyor |
E101 | Temel veri manipülasyonu | Kısmi{.text-warning} | |
E101-01 | INSERT deyimi | Evet {.text-success} | Not: Clickhouse'daki birincil anahtar, UNIQUE kısıtlama |
E101-03 | Güncelleme deyimi Aran UPDATEDI | Hayır {.text-danger} | Bir ALTER UPDATE toplu veri değiştirme bildirimi |
E101-04 | Aranan DELETE deyimi | Hayır {.text-danger} | Bir ALTER DELETE toplu veri kaldırma bildirimi |
E111 | Tek sıra SELECT deyimi | Hayır{.text-danger} | |
E121 | Temel imleç desteği | Hayır{.text-danger} | |
E121-01 | DECLARE CURSOR | Hayır {.text-danger} | |
E121-02 | Sütunlara göre siparişin seçim listesinde olması gerekmez | Hayır {.text-danger} | |
E121-03 | CLA clauseuse by ORDER in Value ifadeleri | Hayır {.text-danger} | |
E121-04 | Açık ifade | Hayır {.text-danger} | |
E121-06 | Konumlandırılmış güncelleme bildirimi | Hayır {.text-danger} | |
E121-07 | Konumlandırılmış silme deyimi | Hayır {.text-danger} | |
E121-08 | Kapat deyimi | Hayır {.text-danger} | |
E121-10 | FETCH deyimi: örtük sonraki | Hayır {.text-danger} | |
E121-17 | Tut imleçler ile | Hayır {.text-danger} | |
E131 | Boş değer desteği (değerler yerine boş değerler) | Kısmi{.text-warning} | Bazı kısıtlamalar geçerlidir |
E141 | Temel bütünlük kısıtlamaları | Kısmi{.text-warning} | |
E141-01 | NOT NULL kısıtlamaları | Evet {.text-success} | Not: NOT NULL tablo sütunları için varsayılan olarak ima edilir |
E141-02 | NULL olmayan sütunların benzersiz kısıtlaması | Hayır {.text-danger} | |
E141-03 | Birincil anahtar kısıtlamaları | Hayır {.text-danger} | |
E141-04 | Hem referans silme eylemi hem de referans güncelleme eylemi için eylem yok varsayılanıyla temel yabancı anahtar kısıtlaması | Hayır {.text-danger} | |
E141-06 | Kontrol kısıt CHECKLAMASI | Evet {.text-success} | |
E141-07 | Sütun varsayılanları | Evet {.text-success} | |
E141-08 | NOT NULL birincil anahtar üzerinde çıkarıldı | Evet {.text-success} | |
E141-10 | Yabancı bir anahtardaki isimler herhangi bir sırada belirtilebilir | Hayır {.text-danger} | |
E151 | İşlem desteği | Hayır{.text-danger} | |
E151-01 | Taahhüt deyimi | Hayır {.text-danger} | |
E151-02 | ROLBACKL statementback deyimi | Hayır {.text-danger} | |
E152 | Temel SET işlem deyimi | Hayır{.text-danger} | |
E152-01 | Set TRANSACTİON deyimi: izolasyon düzeyi SERİALİZABLE yan tümcesi | Hayır {.text-danger} | |
E152-02 | Set TRANSACTİON deyimi: salt okunur ve okuma yazma yan tümceleri | Hayır {.text-danger} | |
E153 | Alt sorgularla güncellenebilir sorgular | Hayır{.text-danger} | |
E161 | **Lider çift eksi kullanarak SQL yorumlar ** | Evet{.text-success} | |
E171 | SQLSTATE desteği | Hayır{.text-danger} | |
E182 | Ana bilgisayar dili bağlama | Hayır{.text-danger} | |
F031 | Temel şema manipülasyonu | Kısmi{.text-warning} | |
F031-01 | Kalıcı temel tablolar oluşturmak için tablo deyimi oluşturma | Kısmi {.text-warning} | Hayır SYSTEM VERSIONING , ON COMMIT , GLOBAL , LOCAL , PRESERVE , DELETE , REF IS , WITH OPTIONS , UNDER , LIKE , PERIOD FOR yan tümceleri ve kullanıcı çözümlenmiş veri türleri için destek yok |
F031-02 | Görünüm deyimi oluştur | Kısmi {.text-warning} | Hayır RECURSIVE , CHECK , UNDER , WITH OPTIONS yan tümceleri ve kullanıcı çözümlenmiş veri türleri için destek yok |
F031-03 | Hibe beyanı | Evet {.text-success} | |
F031-04 | ALTER TABLE deyimi: sütun yan tümcesi Ekle | Kısmi {.text-warning} | İçin destek yok GENERATED fık andra ve sistem süresi |
F031-13 | Dro :p TABLE deyimi: kısıt :lamak | Hayır {.text-danger} | |
F031-16 | Dro :p VİEW deyimi: kısıt :lamak | Hayır {.text-danger} | |
F031-19 | Rev REVOKEOKE deyimi: kısıt clauselamak | Hayır {.text-danger} | |
F041 | Temel birleştirilmiş tablo | Kısmi{.text-warning} | |
F041-01 | Inner join (ancak mutlaka iç anahtar kelime değil) | Evet {.text-success} | |
F041-02 | İç anahtar kelime | Evet {.text-success} | |
F041-03 | LEFT OUTER JOIN | Evet {.text-success} | |
F041-04 | RIGHT OUTER JOIN | Evet {.text-success} | |
F041-05 | Dış birleşimler iç içe geçmiş olabilir | Evet {.text-success} | |
F041-07 | Sol veya sağ dış birleşimdeki iç tablo, bir iç birleşimde de kullanılabilir | Evet {.text-success} | |
F041-08 | Tüm karşılaştırma operatörleri desteklenir (sadece =yerine) | Hayır {.text-danger} | |
F051 | Temel tarih ve saat | Kısmi{.text-warning} | |
F051-01 | Tarih veri türü (tarih literal desteği dahil) | Kısmi {.text-warning} | Hiçbir edebi |
F051-02 | En az 0 kesirli saniye hassasiyetle zaman veri türü (zaman literal desteği dahil) | Hayır {.text-danger} | |
F051-03 | Zaman damgası veri türü (zaman damgası literal desteği dahil) en az 0 ve 6 kesirli saniye hassasiyetle | Hayır {.text-danger} | DateTime64 zaman benzer işlevsellik sağlar |
F051-04 | Tarih, Saat ve zaman damgası veri türlerinde karşılaştırma yüklemi | Kısmi {.text-warning} | Yalnızca bir veri türü kullanılabilir |
F051-05 | Datetime türleri ve karakter dizesi türleri arasında açık döküm | Evet {.text-success} | |
F051-06 | CURRENT_DATE | Hayır {.text-danger} | today() benzer mi |
F051-07 | LOCALTIME | Hayır {.text-danger} | now() benzer mi |
F051-08 | LOCALTIMESTAMP | Hayır {.text-danger} | |
F081 | Sendika ve görüş EXCEPTLERDE | Kısmi{.text-warning} | |
F131 | Grup operationslandırılmış işlemler | Kısmi{.text-warning} | |
F131-01 | WHERE, GROUP BY ve gruplandırılmış görünümlere sahip sorgularda desteklenen yan tümceleri olması | Evet {.text-success} | |
F131-02 | Gruplandırılmış görünümlere sahip sorgularda desteklenen birden çok tablo | Evet {.text-success} | |
F131-03 | Gruplandırılmış görünümlere sahip sorgularda desteklenen işlevleri ayarlayın | Evet {.text-success} | |
F131-04 | GROUP BY ile alt sorgular ve yan tümceleri ve gruplandırılmış görünümler | Evet {.text-success} | |
F131-05 | GROUP BY ile tek satır seçme ve yan tümceleri ve gruplandırılmış görünümleri sahip | Hayır {.text-danger} | |
F181 | Çoklu modül desteği | Hayır{.text-danger} | |
F201 | Döküm fonksiyonu | Evet{.text-success} | |
F221 | Açık varsayılan | Hayır{.text-danger} | |
F261 | Durum ifadesi | Evet{.text-success} | |
F261-01 | Basit durum | Evet {.text-success} | |
F261-02 | Aranan dava | Evet {.text-success} | |
F261-03 | NULLIF | Evet {.text-success} | |
F261-04 | COALESCE | Evet {.text-success} | |
F311 | Şema tanımı deyimi | Kısmi{.text-warning} | |
F311-01 | CREATE SCHEMA | Hayır {.text-danger} | |
F311-02 | Kalıcı temel tablolar için tablo oluşturma | Evet {.text-success} | |
F311-03 | CREATE VIEW | Evet {.text-success} | |
F311-04 | CREATE VIEW: WITH CHECK OPTION | Hayır {.text-danger} | |
F311-05 | Hibe beyanı | Evet {.text-success} | |
F471 | Skaler alt sorgu değerleri | Evet{.text-success} | |
F481 | Genişletilmiş boş yüklem | Evet{.text-success} | |
F812 | Temel işaretleme | Hayır{.text-danger} | |
T321 | Temel SQL-çağrılan rutinleri | Hayır{.text-danger} | |
T321-01 | Hiçbir aşırı yükleme ile kullanıcı tanımlı fonksiyonlar | Hayır {.text-danger} | |
T321-02 | Hiçbir aşırı yükleme ile kullanıcı tanımlı saklı yordamlar | Hayır {.text-danger} | |
T321-03 | Fonksiyon çağırma | Hayır {.text-danger} | |
T321-04 | Çağrı bildirimi | Hayır {.text-danger} | |
T321-05 | Ret statementurn deyimi | Hayır {.text-danger} | |
T631 | Bir liste öğesi ile yüklemde | Evet{.text-success} |