表1:
roleId funcId
1 2
2 3
1 5
1 6
2 1
3 5表2:
roleId userXM
1,2, aa
2 bb
如何查找userXM为"aa"的记录对应表1中的funcId?
roleId funcId
1 2
2 3
1 5
1 6
2 1
3 5表2:
roleId userXM
1,2, aa
2 bb
如何查找userXM为"aa"的记录对应表1中的funcId?
解决方案 »
- 请问这样该怎么做
- 如何在不同数据库上表对表拷贝数据?
- update 触发器多条更新问题
- 怎么查看临时表里的内容?
- Declare @sql varchar(200) Set @sql='Select ID,Name from USER' 怎么在存储过程里循环结果,游标不行
- 为何SSIS包部署到生产系统找不到ODBC数据源
- 请教有关join on的问题
- 数据丢失更新问题
- 我的数据库是sqlserver2000桌面版,现在我要把一个数据库导到sqlserver7.0中.(在线等待,马上给分)
- 小小问题!!!come in
- 从哪里进入修改我的SQL Server 2000(或MSDE)数据库用户名和密码
- 如何用SQL语句停止当前的数据库使用,而恢复另一个数据库备份作为当前数据库使用。因为如果不停止当前正在使用的数据库,就不能恢复其它
insert into A values('1', '2')
insert into A values('2', '3')
insert into A values('1', '5')
insert into A values('1', '6')
insert into A values('2', '1')
insert into A values('3', '5')
create table B (roleId varchar(10), userXM varchar(10))
insert into B values('1,2', 'aa')
insert into B values('2' , 'bb')
goselect a.* from a,b where b.userxm = 'aa' and charindex(','+a.roleid+',',','+b.roleid+',') > 0drop table A,B
/*
roleId funcId
---------- ----------
1 2
2 3
1 5
1 6
2 1
(所影响的行数为 5 行)
*/
insert 表1
select 1,2
union select 2,3
union select 1,5
union select 1,6
union select 2,1
union select 3,5create table 表2(roleId varchar(10), userXM varchar(10))
insert 表2
select '1,2,', 'aa'
union select '2','bb'
select b.*
from 表2 a inner join 表1 b on charindex(','+rtrim(b.roleId)+',' , ','+rtrim(a.roleId)+',')>0
where userXM='aa'
drop table 表1,表1
insert @a
select 1,2
union all
select 2, 3
union all
select 1,5
union all
select 1,6
union all
select 2 ,1
union all
select 3, 5declare @b table(roleId varchar(20),userXM varchar(20))
insert @b
select '1,2', 'aa'
union all
select '2' , ' bb'
select * from @a a,@b b where charindex(cast(a.roleid as varchar),b.roleId)>0 and b.userXM='aa'/*(所影响的行数为 2 行)roleid funcid roleId userXM
----------- ----------- -------------------- --------------------
1 2 1,2 aa
2 3 1,2 aa
1 5 1,2 aa
1 6 1,2 aa
2 1 1,2 aa(所影响的行数为 5 行)
*/