现在有一字符串,想实现如下功能select a from A UNION select 字符串想实现把字符串转换成一个虚拟表,并到第一个查询的结果后面,字符串可按任意分隔符分隔.只要能加入到查询结果后面就可以请高手指教呀!!急呀!!谢谢了!!!

解决方案 »

  1.   

    select a from A UNION select '字符串'
    这个就已经可以了呀。
      

  2.   

    select a from A UNION select SUBSTRING_INDEX('字符串','分隔符',1) UNION select SUBSTRING_INDEX(SUBSTRING_INDEX('字符串','分隔符',2),'分隔符',-1) UNION select SUBSTRING_INDEX(SUBSTRING_INDEX('字符串','分隔符',3),'分隔符',-1) UNION select SUBSTRING_INDEX(SUBSTRING_INDEX('字符串','分隔符',4),'分隔符',-1) UNION select SUBSTRING_INDEX(SUBSTRING_INDEX('字符串','分隔符',5),'分隔符',-1) UNION select SUBSTRING_INDEX(SUBSTRING_INDEX('字符串','分隔符',6),'分隔符',-1) UNION select SUBSTRING_INDEX(SUBSTRING_INDEX('字符串','分隔符',7),'分隔符',-1)............唉,不过,这样感觉不是特别好。但是想不出来有什么其他方法实现了,具体还是找一下函数吧,要不然,自己写一个函数也可以,不过,那样的话,楼主干脆还不如用函数或存储过程实现呢。当然了,更不如用程序实现。
      

  3.   

    楼上的我也想到了,可这样N个UNION 也不是个办法,最后还是用程序实现了,算了!!结贴吧,谢谢大家了!!!