1
SQL Server 2012 - ビュー(複雑)があり、列の1つに数字以外のものを取り除く必要があります。次の点が重要です。SQLスカラー値関数が非常に遅い
STUFF(dbo.campaign_tracking_clicks.tt_cpn, 1, PATINDEX('%[0-9]%', dbo.campaign_tracking_clicks.tt_cpn) - 1, '') AS emailerid
数値の末尾に数字がある場合はエラーとなります。
私は私が使用しているスカラー値関数」
/****** Object: UserDefinedFunction [dbo].[KeepNumCharacters] Script Date: 10/11/2016 1:05:51 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER Function [dbo].[KeepNumCharacters](@Temp VarChar(100)) Returns VarChar(100)
AS
Begin
While PatIndex('%[^0-9]%', @Temp) > 0
Set @Temp = Stuff(@Temp, PatIndex('%[^0-9+]%', @Temp), 1, '')
Return @TEmp
End
を持っています。
dbo.KeepNumCharacters(dbo.campaign_tracking_clicks.tt_cpn) AS emailerid
ただし、実行には非常に時間がかかります。私は検索して検索しましたが、代替案を見つけることはありませんでした。
このデータは自分のフィールドにある必要があります。 – Missy
私はその贅沢はありません。 – user990016
テーブルには何行ありますか? –