簡體   English   中英

HiveQL:從字符串列中刪除前導空格

[英]HiveQL: Remove leading spaces from string column

我有一張看起來像這樣的桌子。

ID | Salary| Name|
_________________________
 1 | 50000|  Lee

 2 | 60000|  Camile

 3 | 70000|  Luther

每個名稱前面都有一個空格; 如果我想從所有條目中刪除該空間,我該怎么做? 我試過使用 regexp_replace 但語法不正確。

到目前為止,我已經想出了這個,但我不知道如何讓它發揮作用。

CREATE EXTERNAL TABLE IF NOT EXISTS Emp(id string, salary int, name string)

ROW FORMAT DELIMITED FIELDS TERMINATED BY ':'

STORED AS TEXTFILE LOCATION '/user/xxx/employee/'

TBLPROPERTIES ('skip.header.line.count'='3');

AS SELECT name, REGEXP_REPLACE(name, ' ')

FROM emp;

您可以使用ltrim function 從字符串中刪除所有尾隨空格。

select id, salary, ltrim(name) as name from your_table;

類似地, rtrim function 從字符串中刪除所有前導空格。

select id, salary, rtrim(name) as name from your_table;

trim function 刪除所有前導和尾隨空格

select id, salary, trim(name) as name from your_table;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM