在本教學中,將學習如何使用SQL Server REPLICATE()
函數複製指定次數的字串。
SQL Server REPLICATE()函數簡介
REPLICATE()
函數按指定的次數重複字串。它的語法很簡單,如下所示:
REPLICATE(input_string, count);
在這個語法中:
input_string
是一個運算式,其值為字元或二進位類型的值。count
是重複input_string
的次數。
SQL Server REPLICATE()函數示例
下麵來看一些使用REPLICATE()
函數的例子。
1. 使用REPLICATE()函數重複文字字串
此示例使用REPLICATE()
函數重複字元z
三次:
SELECT
REPLICATE('z',3) result;
執行上面查詢語句,得到以下結果:
result
------
zzz
(1 row affected)
2. 使用REPLICATE()函數創建具有前導零數據的列
首先,在production
模式中創建一個名為spare_parts
的新表:
CREATE TABLE production.spare_parts (
part_id INT IDENTITY PRIMARY KEY,
part_no VARCHAR(10) NOT NULL UNIQUE,
description VARCHAR(50) NOT NULL
);
假設part_no
必須總是有10
個字元。 如果備件少於10
個字元,則應用程式需要填充前導零,以使長度始終為10
個字元。
其次,在production.spare_parts
表中插入一些值:
INSERT INTO
production.spare_parts(part_no, description)
VALUES
('FRMTUBE','Frame Tube'),
('CHNCO','Chain Cover'),
('CRKS','Cranks');
第三,從production.spare_parts
表中選擇數據,使用REPLICATE()
函數左側填充零:
SELECT
part_id,
CONCAT(
REPLICATE('0', 10 - LEN(part_no)),
part_no
) part_no,
description
FROM
production.spare_parts;
執行上面查詢語句,得到以下結果:
在這個例子中:
首先,使用LEN()
函數計算要填充零的數量:
10 - LEN(part_no)
其次,使用REPLICATE()
函數複製要填充所需要的零:
REPLICATE('0', 10 - LEN(part_no)
第三,使用CONCAT()函數將零填充到part_no
:
CONCAT(
REPLICATE('0', 10 - LEN(part_no)),
part_no
) part_no
在本教學中,學習了如何使用SQL Server REPLICATE()
函數複製指定次數的字串。
上一篇:
SQL Server字串函數
下一篇:
SQL Server Window函數