簡體   English   中英

SQL 數據內的通配符

[英]SQL Wildcard within data

我的情況有點奇怪。 我已生成插入數據庫的文件名,稍后將與下載的文件匹配,但是下載的文件在其名稱中間包含一個隨機 ID。

如果我在插入數據庫的生成文件名中包含通配符,是否可以將其與實際下載的文件進行比較?

生成的名稱示例: just-a-file-name-and-a-suffix.mp4
實際下載的文件: just-a-file-name-51935-and-a-suffix.mp4

我有零方法來實際知道這 5 位數字是什么。 我只知道會有5位數。 理想情況下,我會將生成的名稱插入數據庫中,例如just-a-file-name-%-and-a-suffix.mp4並在 SQL 查詢中使用LIKE關鍵字,但它不起作用。

我能做些什么來解決這個問題並獲得比賽嗎?

您可以使用 substring,如果您願意,可以使用替換和其他一些功能。 以下是使用替換並為其創建 function 的示例。

` CREATE Function [dbo].[RemoveNumericCharacters](@Temp VarChar(1000)) 返回 VarChar(1000) AS 開始

Declare @NumRange as varchar(50) = '%[0-9]%'
While PatIndex(@NumRange, @Temp) > 0
    Set @Temp = Stuff(@Temp, PatIndex(@NumRange, @Temp), 1, '')

Return @Temp

結束,你可以像這樣使用它

SELECT dbo.RemoveNumericCharacters FROM TARGET_TABLE `取自以下帖子—— 從字符串 sql 服務器中刪除數字

請注意,您將文件字符串傳遞給 function,它將返回不帶數字的文件名。

謝謝

暫無
暫無

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

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