【问题标题】:How to use FIND_IN_SET if the values has commas?如果值有逗号,如何使用 FIND_IN_SET?
【发布时间】:2012-12-02 01:23:19
【问题描述】:

我想使用函数 FIND_IN_SET 来“ORDER BY”查询的mysql结果,问题是这些值里面有这样的COMMAS:

valu,e1
value,2
va,lue3
val,ue4

现在,当我进行查询时,我会这样做:

SELECT * FROM table ORDER BY FIND_IN_SET( column, 'valu,e1,value,2,va,lue3,val,ue4' );

如您所见,“,”用于分隔值,但值中包含“,”...

我尝试了一些没有成功的解决方案:

SELECT * FROM table ORDER BY FIND_IN_SET( column, 'valu\,e1,value\,2,va\,lue3,val\,ue4' );

SELECT * FROM table ORDER BY FIND_IN_SET( column, '\'valu,e1\',\'value,2\',\'va,lue3\',\'val,ue4\'' );

但是,这一切都很好!

你知道什么是正确的解决方案吗???谢谢!

【问题讨论】:

    标签: php mysql sql select sql-order-by


    【解决方案1】:

    我相信这个功能是正确的答案/方式:

    SELECT * 
    FROM table 
    ORDER BY FIELD( 
       column, 'valu,e1', 'value,2', 'va,lue3', 'val,ue4' 
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-14
      • 2011-08-31
      • 1970-01-01
      • 2016-09-02
      • 2013-08-05
      相关资源
      最近更新 更多