select * from tt where contains(subject,'"人民公园"') order by len(subject)

解决方案 »

  1.   

    我昨天也看到了一个类似的问题。。
    我是这样写的。。方法比较笨。。也可以得到想要的结果
    不知道可不可以-------------
    create table t1(
    cid  int identity(1,1),
    cname nvarchar(40)
    )
    insert t1 values('人民公园站')
    insert t1 values('中山公园')
    insert t1 values('市人民公园')
    insert t1 values('人民公园')
    insert t1 values('古都人民公园')create table t2(
    cid  int ,
    cname nvarchar(40)
    )insert into t2 (cid,cname) select cid,cname from t1 where cname like '人民公园'
    insert into t2 (cid,cname) select cid,cname from t1 where cname like '人民公园%' and cid not in(select cid from t2)
    insert into t2 (cid,cname) select cid,cname from t1 where cname like '%人民公园' and cid not in(select cid from t2)
    insert into t2 (cid,cname) select cid,cname from t1 where cid not in(select cid from t2)
    select * from t2
    -------结果4 人民公园
    1 人民公园站
    3 市人民公园
    5 古都人民公园
    2 中山公园
     
      

  2.   

    happywang11(随枫)  的方法不是产生很多临时表?
      

  3.   

    应该在Order By中做文章,不过不知道该怎么做,关注。