【发布时间】:2017-02-23 03:48:12
【问题描述】:
这是我从 powershell 中提取的数据(实际上还有更多,但都遵循相同的模式):
Name : SULESRKMA 1
Location : Leisure Services - Technology Services 2
DriverName : KONICA MINOLTA mc4695MF PS PPD 3
Shared : False 4
ShareName : 5
JobCountSinceLastReset : 0 6
我正在尝试删除“名称:”和“位置:”等,但此处使用 REPLACE 命令是我的 sql 查询的一部分:
SELECT * FROM #ReadCmd
WHERE Result LIKE 'Name %:%'
INSERT INTO #output(Name)
SELECT REPLACE(Result, '% %: %', '')
From #ReadCmd
WHERE Result LIKE 'Name %:%'
SELECT * FROM #output
或者例如,这里:
IF OBJECT_ID('tempdb..#fields') != 0
DROP TABLE #fields
CREATE TABLE #fields (Fields varchar(256))
INSERT INTO #fields (Fields)
SELECT REPLACE(Result, ' %: %', '')
FROM #ReadCmd
Where Result Like '% %: %'
关键是,我想用任何内容替换 '_________ :',但 REPLACE 命令将 sql 通配符 '%' 读取为实际的百分号。有没有其他方法可以做到这一点?
在单独的单元格中使用Select RIGHT(Result,CHARINDEX(': ',Result) -1) 输出:
: SULESRKMA
: PrimoPDF
oft XPS Document Writer
: Fax
: CutePDF Writer
【问题讨论】:
标签: sql database tsql powershell replace