Sql Server 2005中查询用分隔符分割的内容中是否包含其中一个内容
2011-10-25 15:41
681 查看
今天做项目遇到一个问题,
有产品分类A,B,C顶级分类,
期中A下面有a1,a2,a3子分类.
但是a1可能共同属于A和B,然后我的数据库是这样设计的
id | name | parnet |
1 | A | 0 |
2 | B | 0 |
3 | a1 | 1,2 |
如果想要查询A的所有子类的话就要查询parent中包含1的,所以就萌生了这个办法.呵呵,
暂时没什么好办法,欢迎拍砖~~
另外,这个东西我想弄成bool返回值的,哪位兄弟会的希望帮忙解决一下....
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*
-- =============================================
-- Author: <饭饭>
-- Create date: <2011-10-19>
-- Description: <查询分隔符分割的数据是否包含某项>
-- =============================================
*/
ALTER Function [dbo].[HasKey](@DataStr varchar(100),@key varchar(8))
returns int
as
begin
declare @return_str varchar(50)
declare @isok bit
declare @posi int
set @isok = 0
--set @DataStr = 'a,aaaa,aaaddd,ffass'
--set @key = 'aaaa'
set @DataStr = @DataStr+','
while len(@DataStr) > 0 and @isok=0
begin
set @posi= charindex(',',@DataStr)
set @return_str = replace(substring(@DataStr,1,charindex(',',@DataStr)),',','')
set @DataStr = substring(@DataStr,@posi+1,len(@DataStr))
if(@return_str=@key)
begin
set @isok=1
break
end
end
return @isok
end
GO
相关文章推荐
- sql server 查询一个表中的字段是否包含在另一个表的字段中
- filter()的参数内容,查找语句。其中in可以在一个结果集中查找是否包含另一个结果集的数据。
- JAVA中查询一个词在内容中出现的次数、判断集合中是否包含关键字、查询字符串数组单个字符的长度
- mysql查询某一个字段是否包含中文字符
- sql server如何查询一个表中的一个列是否存在唯一约束 比如查询 AA表的 BB列
- 编写一个密码类,其中包含一个 str 密码字符串私有成员数据,一个“==”运算 符重载成员函数,用于比较用户输入的密码是否正确。并用数据测试该类。
- Android Cursor的问题 如何查询得到的内容很多,如何取其中的特定的一个
- 8.3 编写一个密码类,其中包含一个 str 密码字符串私有成员数据,一个“==”运算 符重载成员函数,用于比较用户输入的密码是否正确。并用数据测试该类
- 用oracle查询一个表中的一个字段内容包含另一个表中的某个字段的值
- mysql查询某一个字段是否包含中文字符
- 用JAVA写查询一个字符串中是否包含另外一个字符串以及出现的次数
- Path,Files巩固,题目:从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中
- 在Action中查询出SQL SERVER表的数据,返回一个list。怎么在JSP页面中使用Struts标签,显示出表中的内容?(转)
- sql server 2005中如何查询一个数据库中有多少张表?
- solr入门之Solr函数查询初使用之查询字段是否包含指定内容
- 分割字符串(有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数)
- 在数据库SQL Server 2005/2008中,查询包含某关键字的存储过程语句:
- Java-IO-从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)
- sql查询一个字段包含另一个字段内容
- SQL SERVER 2005的一个怪问题: 在查询结果面板中编辑失败.