Clickhouse 字符串函數使用總結—— Clickhouse基礎篇(七)

文章目錄

    • 判空
    • 非空判斷
    • 字符串長度
    • 左補齊字符串
    • 右補齊字符串
    • 字符串轉小寫
    • 字符串轉大寫
    • 重復字符串
    • 拼接字符串函數
    • 計算子串
    • base64編碼
    • base64解碼
    • 判斷開頭字符串
    • 判斷結尾字符串
    • 刪除空白字符
    • 從HTML提取純文本
    • 字符串部分替換
    • 字符串全部替換
    • 字符串正則部分替換
    • 字符串正則全部替換
    • 計算子串下標
    • 正則匹配
    • 模糊匹配
    • 正則匹配次數

判空

SELECTempty('') AS res1,empty('a') AS res2Query id: 9aae1f36-5acb-4dbf-93a9-efe4a6d0a671┌─res1─┬─res2─┐
│    10 │
└──────┴──────┘

非空判斷

SELECTnotEmpty('') AS res1,notEmpty('a') AS res2Query id: 140a6942-c36e-48dc-8fa7-7699f67386e4┌─res1─┬─res2─┐
│    01 │
└──────┴──────┘

字符串長度

SELECTlength('') AS res1,length('abc') AS res2,length(NULL) AS res3Query id: e8454e1c-3307-4295-81fc-4d5dd846fb7e┌─res1─┬─res2─┬─res3─┐
│    03 │ ???? │
└──────┴──────┴──────┘

左補齊字符串

將字符串 10 用字符串 s 補齊至7位,

SELECT leftPad('10', 7, 's') AS res1Query id: ae7bfd49-bb75-4b0b-a4af-061182ac598d┌─res1────┐
│ sssss10 │
└─────────┘

右補齊字符串

SELECT rightPad('10', 7, 's') AS res1Query id: ae7bfd49-bb75-4b0b-a4af-061182ac598d┌─res1────┐
│ 10sssss │
└─────────┘

字符串轉小寫

SELECT lower('aBC') AS resQuery id: c41b8753-edcf-4984-816c-ee70febc0b64┌─res─┐
│ abc │
└─────┘

字符串轉大寫

SELECT upper('abc') AS resQuery id: c41b8753-edcf-4984-816c-ee70febc0b64┌─res─┐
│ ABC │
└─────┘

重復字符串

SELECT repeat('abc', 3) AS resQuery id: 0f519227-cda4-49e1-a003-ede5862c5a3a┌─res───────┐
│ abcabcabc │
└───────────┘

拼接字符串函數

SELECT concat('HELLO', ',', 'World!') AS resQuery id: 33fade2d-7b20-4da9-8b1c-4ffb40bdb3dd┌─res──────────┐
│ HELLO,World! │
└──────────────┘

計算子串

SELECT'abcdef' AS s,substring(s, 1, 3) AS resQuery id: 7e36fc5d-b054-40c1-b2a5-84bb88c1f8db┌─s──────┬─res─┐
│ abcdef │ abc │
└────────┴─────┘

base64編碼

SELECT base64Encode('123456') AS resQuery id: 106b426e-eea5-45af-aca5-0bb6243cfa80┌─res──────┐
│ MTIzNDU2 │
└──────────┘

base64解碼

SELECT base64Decode('MTIzNDU2') AS res;Query id: 106b426e-eea5-45af-aca5-0bb6243cfa80┌─res──────┐
│ 123456   │
└──────────┘

判斷開頭字符串

SELECT startsWith('abc', 'a') AS resQuery id: 64b2af5f-a4c4-440a-a019-64675554e060┌─res─┐
│   1 │
└─────┘

判斷結尾字符串

SELECT startsWith('abc', 'a') AS resQuery id: 64b2af5f-a4c4-440a-a019-64675554e060┌─res─┐
│   0 │
└─────┘

刪除空白字符

SELECT trimBoth('   a bc  ') AS resQuery id: 074bfb13-6211-47b0-964f-c9c3005a6110┌─res──┐
│ a bc │
└──────┘

從HTML提取純文本

SELECT extractTextFromHTML('<a>text</a>') AS resQuery id: 7389e44a-5726-4216-8987-9105c32a1b30┌─res──┐
│ text │
└──────┘

字符串部分替換

SELECT replaceOne('abc****defg****', '*', '$') AS resQuery id: 6e9cdca9-9b37-4824-ab3a-0d712d8d81aa┌─res─────────────┐
│ abc$***defg**** │
└─────────────────┘

字符串全部替換

SELECT replaceAll('abc****defg****', '*', '$') AS resQuery id: 442b28c2-dae8-4de8-9738-f41241632255┌─res─────────────┐
│ abc$$$$defg$$$$ │
└─────────────────┘

字符串正則部分替換

SELECT replaceRegexpOne('abc123de09', '(\\d)', '$') AS resQuery id: 7409ff71-48f2-4fc5-b752-93cd80a16e34┌─res────────┐
│ abc$23de09 │
└────────────┘

字符串正則全部替換

SELECT replaceRegexpAll('abc123de09', '(\\d)', '$') AS resQuery id: 7409ff71-48f2-4fc5-b752-93cd80a16e34┌─res────────┐
│ abc$$$de$$ │
└────────────┘

計算子串下標

SELECT position('123456789', '7') AS resQuery id: 84ed92af-bb3c-45bf-8800-c0c84ac3d91f┌─res─┐
│   7 │
└─────┘

正則匹配

SELECT match('abcccddd', '(^abc)') AS resQuery id: cc18551b-9a46-4554-83ff-fb3764e5a033┌─res─┐
│   1 │
└─────┘

模糊匹配

SELECT'abc' LIKE 'a%' AS res1,'12345' LIKE '__3__' AS res2Query id: 54992c14-41e5-4145-9edd-ad26af67110d┌─res1─┬─res2─┐
│    11 │
└──────┴──────┘

正則匹配次數

SELECTcountMatches('foobar.com', 'o+') AS res1,countMatches('aaaa', 'aa') AS res2Query id: d245a3d8-f8bd-446d-aeca-0f54184ed24e┌─res1─┬─res2─┐
│    22 │
└──────┴──────┘

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/18555.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/18555.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/18555.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spring Boot 與 OpenJ9 的 Docker 集成:提升 Java 應用性能的新選擇

## 引言 隨著 Docker 的普及&#xff0c;越來越多的開發者開始使用 Docker 來部署和管理他們的應用。在這種趨勢下&#xff0c;將 Spring Boot 與 OpenJ9 結合使用&#xff0c;可以為 Java 應用帶來更高的性能和更低的資源占用。本文將介紹如何在 Docker 環境中使用 Spring Bo…

回顧封裝、繼承和多態的概念,并給出相關示例

封裝、繼承和多態是面向對象編程&#xff08;OOP&#xff09;的三個核心概念。下面我將分別解釋這些概念&#xff0c;并給出相應的示例。 封裝 概念&#xff1a;封裝是將數據&#xff08;變量&#xff09;和操作數據的方法&#xff08;函數&#xff09;組合到一個類中&#x…

pytest斷言與Selenium模擬操作的規劃案例

pytest斷言與Selenium模擬操作的規劃案例 在使用pytest進行自動化測試時&#xff0c;斷言是驗證測試結果是否符合預期的關鍵步驟。pytest提供了簡潔的斷言語法&#xff0c;使得編寫測試用例更加直觀和易于維護。以下是一個簡單的規劃案例&#xff0c;展示了如何在pytest中使用…

202309青少年軟件編程(Python)等級考試試卷(四級)

第 1 題 【單選題】 用枚舉算法求解“100 以內既能被 3 整除又能被 4 整除的元素”時, 在下列數值范圍內,算法執行效率最高的是? ( ) A :1~101 B :4~100 C :12~100 D :12~96 正確答案:D 試題解析: 在選取循環控制變量時, 枚舉范圍應盡可能小, 但又不能遺漏。 第 …

掌握Python循環:從基礎到應用的完整指南

循環語句是編程中常用的一種結構&#xff0c;用于重復執行特定的代碼塊。Python3 提供了幾種類型的循環語句&#xff0c;包括for循環和while循環。接下來&#xff0c;我會詳細解釋循環語句的基本語法、常用命令、示例、應用場景、注意事項和總結。 基本語法 for 循環 for 變…

什么是勒索軟件

什么是勒索軟件 勒索軟件又稱勒索病毒&#xff0c;是一種特殊的惡意軟件&#xff0c;又被歸類為“阻斷訪問式攻擊”&#xff08;denial-of-access attack&#xff09;&#xff0c;與其他病毒最大的不同在于攻擊手法以及中毒方式。勒索軟件的攻擊方式是將受害者的電腦鎖起來或者…

mysql-增量備份流程詳細流程

3.增量備份流程 原理&#xff1a;每次備份上一次備份到現在產生的新數據 1.在數據庫上面創建一個測試的庫 增量備份流程&#xff08;重要) 增量備份跟上一次相比 我增加了啥--incremental //放到何處 --incremental-basedir //上一級//第一次增量備份 innobackupex --user…

Spring Boot中如何查詢PGSQL分表后的數據

數據庫用的pgsql&#xff0c;在表數據超過100w條的時候執行定時任務進行了分表&#xff0c;分表后表名命名為原的表名后面拼接時間&#xff0c;如原表名是card_device_trajectory_info&#xff0c;分表后拼接時間后得到card_device_trajectory_info_20240503&#xff0c;然后分…

ubuntu使用oh my zsh美化終端

ubuntu使用oh my zsh美化終端 文章目錄 ubuntu使用oh my zsh美化終端1. 安裝zsh和oh my zsh2. 修改zsh主題3. 安裝zsh插件4. 將.bashrc移植到.zshrcReference 1. 安裝zsh和oh my zsh 首先安裝zsh sudo apt install zsh然后查看本地有哪些shell可以使用 cat /etc/shells 將默…

使用nexus搭建的nodejs私庫,定期清理無用的npm組件,徹底釋放磁盤空間

一、背景 昨天我們整理了一篇關于docker私庫&#xff0c;如何定期清理以釋放磁盤空間的文章。 雖然也提及了npm前端應用的組件該如何定期清理的&#xff0c;本文是對它作一個補充說明。 前文也看到了&#xff0c;npm組件占用的blob空間為180多GB&#xff0c;急需清理。 二、…

Flutter 中的 MouseRegion 小部件:全面指南

Flutter 中的 MouseRegion 小部件&#xff1a;全面指南 在 Flutter 中&#xff0c;MouseRegion 是一個非常有用的小部件&#xff0c;它允許你為部件添加鼠標事件&#xff08;如點擊、懸停、離開等&#xff09;。這在開發需要處理鼠標交互的應用時尤為重要。本文將詳細介紹 Mou…

100個 Unity小游戲系列三 -Unity 抽獎游戲專題一 轉盤抽獎游戲

一 、效果展示 二、知識點 2.1 布局需要實現功能 1、轉動的根目錄為itemSpinRoot 2、創建對應的item 3、每個item轉動的角度 2.2 代碼 public class WheelDialog : UIBase{[SerializeField] Button btnClick;[SerializeField] Button btnClose;[SerializeField] Sprite[] ite…

微信小程序(路由傳參)

微信小程序的路由系統和其他Web應用類似&#xff0c;主要通過頁面路徑和URL參數進行頁面導航和數據傳遞。下面詳細介紹微信小程序路由的基本使用方法和相關技巧。 1. 基本頁面導航 1.1 配置頁面路徑 在微信小程序的 app.json 文件中&#xff0c;需要配置小程序的頁面路徑。這…

哪有異地組網的工具?

不同地區的電腦與電腦、設備與設備、電腦與設備之間的信息遠程通信&#xff0c;一直是企業和個人面臨的難題。通過使用天聯組網的解決方案&#xff0c;這個問題將迎刃而解。 天聯組網解決方案 天聯組網是一種可以實現不同地區之間電腦、設備及其之間的信息遠程通信的解決方案。…

Trie字符串統計-java

Trie&#xff0c;又稱前綴樹或字典樹&#xff0c;是一種有序樹&#xff0c;用于保存關聯數組&#xff0c;其中的鍵通常是字符串。 目錄 前言? 一、Trie字符串統計? 二、算法思路? 1.Trie樹定義&#x1f319; 2.變量解釋&#x1f319; 3.插入操作&#x1f319; 4.Trie樹查找操…

vim文本編輯器相關用法

1. 引言 Vim&#xff0c;一個功能強大的文本編輯器&#xff0c;它在程序員和系統管理員中廣受歡迎。Vim是Vi的增強版&#xff0c;提供了一系列高級功能&#xff0c;包括語法高亮、代碼補全、多窗口編輯等。 2. Vim的安裝 Vim的安裝過程在不同的Linux發行版中略有不同。以下是…

MapStruct高級用法

MapStruct高級用法 依賴注入&#xff08;Using dependency injection&#xff09; Mapper(componentModel SPRING) public interface SpringMapper {SpringMapper MAPPER Mappers.getMapper(SpringMapper.class);PersonDTO personDoToDTO(Person person); }public static fin…

【class18】人工智能初步----語音識別(4)

【class17】 上節課&#xff0c;我們學習了: 語音端點檢測的相關概念&#xff0c;并通過代碼切分和保存了音頻。 本節課&#xff0c;我們將學習這些知識點&#xff1a;1. 序列到序列模型2. 循環神經網絡3. 調用短語音識別接口 知其然&#xff0c;知其所以然 在調用語…

數組單調棧-901. 股票價格跨度、leetcode

單調棧作為一種數據結構在求解類遞增、遞減方面的題目中有較為廣泛的應用&#xff0c;在以往的leetcode中所見到的相關單調棧的題目均為單一元素&#xff0c;今天刷到901題目時&#xff0c;想到了將數組元素作為單調棧中元素的方法進行求解。 題目鏈接及描述 901. 股票價格跨…

【c++leetcode】69. Sqrt(x)

問題入口 二分搜索 最困難的是能否意識到用二分搜索法解題。 算術平方根的區間在[1, x] 。代碼如下&#xff1a; class Solution { public:int mySqrt(int x) {if (x 1 || x 0){return x;}int64_t start 1;int64_t end x;while (start < x){int64_t mid start (en…