declare @a table(a varchar(100))
insert @a select '中华人民共和国'
insert @a select '中华人民'
insert @a select '中国'declare @key table(a varchar(100))
insert @key select '中'
insert @key select '华'
insert @key select '民'
insert @key select '国'select a from
(select a.a a,sum(case when charindex(b.a,a.a)>0  then 1 else 0 end)  x from @a a,@key b group by a.a)aa
order by x desc这个存储过程如何改成asp里面的sql语句来实现

解决方案 »

  1.   

    select a from
    (select a.a a,sum(case when charindex(b.a,a.a)>0  then 1 else 0 end)  x from (select '中华人民共和国' AS a UNION ALL
    select '中华人民' UNION ALL
    select '中国') a,(select '中' AS a UNION ALL
    select '华' UNION ALL
    select '民' UNION ALL
    select '国') b group by a.a)aa
    order by x desc asp也是可以调用存储过程的 楼主为啥这么要这么做呢?
      

  2.   

    string sql="declare @a table(a varchar(100)) "+ 
    "insert @a select '中华人民共和国' "+ 
    "insert @a select '中华人民' "+
    "insert @a select '中国' "+"declare @key table(a varchar(100)) "+
    "insert @key select '中' "+
    "insert @key select '华' "+
    "insert @key select '民' "+
    "insert @key select '国' "+"select a from "+
    "(select a.a a,sum(case when charindex(b.a,a.a)>0  then 1 else 0 end)  x from @a a,@key "+ 
    "b group by a.a) aa "+ 
    "order by x desc ";
    改完了。无聊啊。有什么意义!