0
我有一個sql表,其中'Action'列中的一列是nvarchar(max)。此列可以具有像HelloKitty_1.MP4或HeMan_2.MP4或SpiderMan_1.MP4,Hulk_4.MP4這樣的值。這裏的1,2,1就是我所說的videoIndex。在SQL中使用變量和模式匹配LIKE
我正在寫一個SQL存儲過程,其中我傳入videoIndex(int)並返回包含該索引的所有行。所以在上面的例子中,如果傳入1,它應該返回給我HelloKitty_1.MP4和SpiderMan_1.MP4。
我做了下面的代碼片段,但是我得到了這個錯誤:「將varchar值'%_'
轉換爲數據類型爲int時轉換失敗。
DECLARE @SearchPattern varchar(40)
SET @SearchPattern = '%' + '_' + @videoindex + '.MP4'
DECLARE @WatchVideoCount int;
SET @WatchVideoCount =
(SELECT count(*)
FROM [dbo].[VideoWatched]
WHERE
[Action] LIKE @SearchPattern)
SELECT @WatchVideoCount as TotalTimesUsersWatchedVideo, @videoindex as videoIndex
或者你可以使用'SET @SearchPattern = CONCAT('% ','_',@videoindex,'.MP4')' – wajeeh
太好了。謝謝。我鑄造它,它的工作! – SweetNeetu
歡迎:) – wajeeh