-3

我有一个表格,其中包含一些商业短文本,例如“PVT,LTD”等,如图所示。

其次,我们每次都会收到来自另一方的新头衔,例如“Taha Zubair”和“Taha PVT Ltd”。

现在我需要找到如果标题包含关键字,从数据库扫描后我只需要返回计数。如果计数为零 (0) 表示标题很简单,如“Taha Zubair”,否则返回 > 1,如果标题类似于“Taha PVT Ltd”或“Taha Trust”

图片:http://social.msdn.microsoft.com/Forums/getfile/195838

此外,我需要做一些事情,比如在存储过程中进行调整,在编程应用程序中使用整个查询(内联查询)会影响性能。

如果您有任何问题,请毫不犹豫地问它......

4

1 回答 1

2

作为函数

Create Function F_GetNonIndividual(@SearchStr nVarchar(100)) Returns int
as  -- use Select dbo.F_GetNonIndividual('Abc Solutions PVT LTD')
begin
    Declare @Result int
    Select @Result = Count(*) 
    from NonIndividualTitle
    where @SearchStr Like ('%'+NonIndivTitle+'%')
    Return @Result
end 

作为程序

Create Procedure P_GetNonIndividual(@SearchStr nVarchar(100))
as  -- use EXEC P_GetNonIndividual 'Abc Solutions PVT LTD'
begin
    Select Count(*) 
    from NonIndividualTitle
    where @SearchStr Like ('%'+NonIndivTitle+'%')
end 

作为没有参数的程序

Create Procedure P_GetNonIndividualOut(@SearchStr nVarchar(100),  @OutValue int out)
as  
begin
    Select @OutValue=Count(*) 
    from NonIndividualTitle
    where @SearchStr Like ('%'+NonIndivTitle+'%')
end 

带查询示例

Declare @OutValue int
exec P_GetNonIndividualOut 'Abc Solutions PVT LTD',@OutValue out
print @OutValue
于 2012-11-18T17:05:31.043 回答