求一段匹配拼SQL的代码 急!!!

godhlw 2007-04-28 01:45:25
从表中取出字段命名为jh,为String类型,jh的值为"'018722','019003','016610','016835','016776','018877','016598'"这样一段字符串,长度不定

数据库里面存储的是警号样式为'016659,',字段是带个逗号的,可能是多个,中间以逗号隔开
现在我怎么用数组遍历转换jh传查询条件让他与数据库里面存储的字段匹配呢?
...全文
228 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
s1good 2007-04-28
  • 打赏
  • 举报
回复
参数 : @aString
类型 Verchar
返回一个表:
如传入: “abcd,efg,mm,.."
要得到结果
abcd
efg
mm

create function f_split(@SourceSql varchar(8000))
returns @temp table(a varchar(100))
as
begin
declare @i int
set @SourceSql=rtrim(ltrim(@SourceSql))
set @i=charindex(',',@SourceSql)
while @i>=1
begin
insert @temp values(left(@SourceSql,@i-1))
set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)
set @i=charindex(',',@SourceSql)
end
if @SourceSql<>','
insert @temp values(@SourceSql)
return
end

用法 select * from dbo.f_split('abcd,efg,mm')


godhlw 2007-04-28
  • 打赏
  • 举报
回复
函数怎么写?
masse 2007-04-28
  • 打赏
  • 举报
回复
这个可能是你要的

http://forums.oracle.com/forums/thread.jspa;jsessionid=8d92200830de63e9c322715d49a191c9dfc445289af4.e34QbhuKaxmMai0MaNeMb3aTbhf0?messageID=895743
masse 2007-04-28
  • 打赏
  • 举报
回复
select * from table where jh in (select split(jh,',') from table)

写一个split函数吧。然后用上面的语句
godhlw 2007-04-28
  • 打赏
  • 举报
回复
用IN不行啊 IN后面要跟一个数组 数据库里面是018722,019003,....这样一串字符串存储的
我现在要想办法把JH中,号之间的内容分段取出来 然后再到后面的警号里面去匹配
masse 2007-04-28
  • 打赏
  • 举报
回复
没太明白你题目的意思,
给点参考资料吧
把string切成string[] 用split方法。

获取某个表有那些字段(列),用getColumnName,具体使用方法如下
try {
// Create a result set
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM my_table");

// Get result set meta data
ResultSetMetaData rsmd = rs.getMetaData();
int numColumns = rsmd.getColumnCount();

// Get the column names; column indices start from 1
for (int i=1; i<numColumns+1; i++) {
String columnName = rsmd.getColumnName(i);

// Get the name of the column's table name
String tableName = rsmd.getTableName(i);
}
} catch (SQLException e) {
}

你把你需求描述清除我再看看吧
Dones 2007-04-28
  • 打赏
  • 举报
回复
select * from table where jh in (select jh from table)

81,115

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧