求一SQL语句,也很常用!
A表:
id city cityName
1 001 北京
2 002 上海
3 003 广州
4 004 重庆
5 005 成都
B表:
id ciytCode
1 001,002,003
2 003,004,005
当b.id= '1 ',下拉框里是北京
上海
广州
当b.id= '2 ',下拉框里是广州
重庆
成都
[解决办法]
id city cityName
1 001 北京
2 002 上海
3 003 广州
4 004 重庆
5 005 成都
B表:
id ciytCode
1 001,002,003
2 003,004,005
select * from B表 where charindex(A.city, ', ' + citycode + ', ') > 0
[解决办法]
下班了,发个差不多的例子,楼主看一下:
--解答:
create table A(F_ID int, F_Name varchar(10))
insert A select 1, '刘德华 '
union all select 2, '梁咏琪 '
union all select 3, '李嘉欣 '
create table B(F_ID int, F_FilmName varchar(50), F_StarID varchar(20))
insert B select 1, '黑马王子 ', '1,3, '
union all select 2, '向左走向右走 ', '2, '
create function fun(@F_StarID varchar(20))
returns varchar(200)
as
begin
declare @re varchar(200)
set @re= ' '
select @re=@re+F_Name+ ', '
from A
where charindex( ', '+rtrim(F_ID)+ ', ', ', '+@F_StarID)> 0
return @re
end
select F_ID, F_FilmName, F_StarID=dbo.fun(F_StarID)
from B
--result
F_ID F_FilmName F_StarID
----------- -------------------------------------------------- -------------------------
1 黑马王子 刘德华,李嘉欣,
2 向左走向右走 梁咏琪,
[解决办法]
SQL里没有下拉框.
create table A表(id int,city varchar(10),cityname varchar(20))
insert into A表
select 1, '001 ', '北京 '
union all select 2, '002 ', '上海 '
union all select 3, '003 ', '广州 '
union all select 4, '004 ', '重庆 '
union all select 5, '005 ', '成都 '
create table B表(id int,citycode varchar(100))
insert into B表
select 1, '001,002,003 '
union all select 2, '003,004,005 '
select cityname
from B表,A表
where charindex( ', '+city+ ', ', ', '+citycode+ ', ')> 0
and B表.id=1