功能 检查字符串是否有/

发布于 2024-11-28 18:43:57 字数 97 浏览 0 评论 0原文

我想在 SQL SERVER 中编写一个用户定义的函数,它将接受一个字符串作为参数,并检查字符串中是否有“/”,它将返回 1,否则返回 0。

请指导我实现这个场景。

I want to write a User-Defined function in SQL SERVER which will take a string as parameter and check it if it has a '/' in the string, it'll return 1 and otherwise 0.

Please guide me to achieve this scenario.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

瑕疵 2024-12-05 18:43:57

不确定为什么当 TSQL 的 CHARINDEX 就是您真正需要的。

如果您确实需要 UDF,请尝试这样的操作:

CREATE FUNCTION dbo.HasSlash(@input varchar(max))
RETURNS bit
AS
BEGIN        
     RETURN CHARINDEX( '/',@input);
END;

像这样使用它:

SELECT dbo.HasSlash('hello/world'); -- returns 1
SELECT dbo.HasSlash('hello world'); -- returns 0

Unsure why you'd want to make a UDF when TSQL's CHARINDEX is all you really need.

Try something like this if you really need a UDF:

CREATE FUNCTION dbo.HasSlash(@input varchar(max))
RETURNS bit
AS
BEGIN        
     RETURN CHARINDEX( '/',@input);
END;

Use it like this:

SELECT dbo.HasSlash('hello/world'); -- returns 1
SELECT dbo.HasSlash('hello world'); -- returns 0
茶底世界 2024-12-05 18:43:57

下面是一个示例:

if OBJECT_ID('dbo.fn_CheckSlash') is not null
    drop function dbo.fn_CheckSlash
go
create function dbo.fn_CheckSlash(
    @str varchar(max))
returns bit
as begin
    return cast(case when @str like '%/%' then 1 else 0 end as bit)
end
go
select dbo.fn_CheckSlash('ac+dc'), dbo.fn_CheckSlash('ac/dc')

在实践之外,您不会创建用户定义的函数,因为它增加的复杂性比其解决的复杂性更多。您可以只使用如'%/%'

Here's an example:

if OBJECT_ID('dbo.fn_CheckSlash') is not null
    drop function dbo.fn_CheckSlash
go
create function dbo.fn_CheckSlash(
    @str varchar(max))
returns bit
as begin
    return cast(case when @str like '%/%' then 1 else 0 end as bit)
end
go
select dbo.fn_CheckSlash('ac+dc'), dbo.fn_CheckSlash('ac/dc')

Outside of practice, you would not create a user-defined function because it adds more complexity than it solves. You could just use like '%/%'.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文