如何在MySQL中创建自定义排序顺序并检查字符串的开头?

头像

在stackoverflow上发现了几个有关自定义排序和自定义排序字母的问题。但是,我找不到解决问题的方法。

想象我们有一个这样的表:

 # videoid #
 F01
 F02
 F031
 F032
 G01
 G02
 GEO01
 PR011
 PR012
 TRI01
 TRI021
 TRI022
 VEK01

并且我们希望将其排序为非字母,而不是AZ,而应为G,F,GEO,TRI,PR,VEK。为此,我必须定义自定义排序,并考虑%通配符以获取所有以“ F”开头的结果。

我尝试了mysql的CASE WHEN查询,但是当有LIKE比较时,它似乎不起作用:

SELECT * FROM `videos`
ORDER BY CASE `videoid`
    WHEN videoid LIKE 'G%' THEN 1
    WHEN videoid LIKE 'F%' THEN 2
    WHEN videoid LIKE 'GEO%' THEN 3
    WHEN videoid LIKE 'TRI%' THEN 5
    WHEN videoid LIKE 'PR%' THEN 4
    WHEN videoid LIKE 'VEK%' THEN 6
    ELSE 0
END

我的尝试

WHEN (LEFT(videoid, 1) = 'G') THEN 1
WHEN (LEFT(videoid, 1) = 'F') THEN 2
WHEN (LEFT(videoid, 3) = 'GEO') THEN 3
... 

也失败了。

我也尝试使用FIELD没有成功:

SELECT * FROM `videos`
ORDER BY FIELD(videoid, 'G%','F%','GEO%','TRI%','PR%','VEK%');

什么是正确的mysql查询?

Ankit bajpai

您的语法错误。尝试这样的事情:-

SELECT * FROM `videos`
ORDER BY CASE 
WHEN `videoid` LIKE 'GEO%' THEN 3
WHEN `videoid` LIKE 'G%' THEN 1
WHEN `videoid` LIKE 'F%' THEN 2
WHEN `videoid` LIKE 'TRI%' THEN 4
WHEN `videoid` LIKE 'PR%' THEN 5
WHEN `videoid` LIKE 'VEK%' THEN 6
ELSE 0
END

这可能对您有帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在python中,如何检查字符串是否以特殊符号开头?

来自分类Dev

在Python中创建自定义字符串类型

来自分类Dev

如何检查字符串是否以特定字符串开头>

来自分类Dev

如何检查字符串不是以批处理中的数字开头?

来自分类Dev

如何检查字符串是否以“”(双引号)开头?

来自分类Dev

bash:如何检查字符串是否以“#”开头?

来自分类Dev

自定义字符串排序

来自分类Dev

Dart Polymer:创建时如何在自定义中设置非字符串字段

来自分类Dev

如何自定义字符串数组中动态创建的按钮的click事件?

来自分类Dev

如何在JavaScript中检查字符串长度?

来自分类Dev

如何在Delphi中检查字符串是否包含子字符串?

来自分类Dev

检查字符串是否以括号中的数字开头

来自分类Dev

如何在Liquid中检查字符串是否以特定的子字符串结尾?

来自分类Dev

检查字符串如何以数字,句点(。)和XSLT中的空格开头

来自分类Dev

Java的:如何创建一个基于自定义对象的ArrayList排序的字符串ArrayList中不使用排序()

来自分类Dev

如何在Laravel中为字符串字段创建自定义自动增量

来自分类Dev

如何检查字符串dateformat是否可排序?

来自分类Dev

ggplot2 | 如何自定义图例中字符串值的顺序?

来自分类Dev

如何在C中检查字符串

来自分类Dev

在Python中创建自定义字符串类型

来自分类Dev

如何从自定义格式的字符串创建JSON

来自分类Dev

如何自定义结果的顺序(即字符串的字母顺序以外的其他顺序)

来自分类Dev

C#如何检查字符串数组元素是否在字符串开头?

来自分类Dev

如何检查自定义数组中是否存在字符串?

来自分类Dev

如何自定义Collections.sort()以按字符串的数字前缀顺序对其进行排序

来自分类Dev

使用Parsley.js自定义验证器检查字符串

来自分类Dev

如何迭代 for 循环并创建自定义字符串

来自分类Dev

如何检查字符串以字符验证开头

来自分类Dev

如何在kotlin中检查以指定字符串开头的字符串?

Related 相关文章

  1. 1

    在python中,如何检查字符串是否以特殊符号开头?

  2. 2

    在Python中创建自定义字符串类型

  3. 3

    如何检查字符串是否以特定字符串开头>

  4. 4

    如何检查字符串不是以批处理中的数字开头?

  5. 5

    如何检查字符串是否以“”(双引号)开头?

  6. 6

    bash:如何检查字符串是否以“#”开头?

  7. 7

    自定义字符串排序

  8. 8

    Dart Polymer:创建时如何在自定义中设置非字符串字段

  9. 9

    如何自定义字符串数组中动态创建的按钮的click事件?

  10. 10

    如何在JavaScript中检查字符串长度?

  11. 11

    如何在Delphi中检查字符串是否包含子字符串?

  12. 12

    检查字符串是否以括号中的数字开头

  13. 13

    如何在Liquid中检查字符串是否以特定的子字符串结尾?

  14. 14

    检查字符串如何以数字,句点(。)和XSLT中的空格开头

  15. 15

    Java的:如何创建一个基于自定义对象的ArrayList排序的字符串ArrayList中不使用排序()

  16. 16

    如何在Laravel中为字符串字段创建自定义自动增量

  17. 17

    如何检查字符串dateformat是否可排序?

  18. 18

    ggplot2 | 如何自定义图例中字符串值的顺序?

  19. 19

    如何在C中检查字符串

  20. 20

    在Python中创建自定义字符串类型

  21. 21

    如何从自定义格式的字符串创建JSON

  22. 22

    如何自定义结果的顺序(即字符串的字母顺序以外的其他顺序)

  23. 23

    C#如何检查字符串数组元素是否在字符串开头?

  24. 24

    如何检查自定义数组中是否存在字符串?

  25. 25

    如何自定义Collections.sort()以按字符串的数字前缀顺序对其进行排序

  26. 26

    使用Parsley.js自定义验证器检查字符串

  27. 27

    如何迭代 for 循环并创建自定义字符串

  28. 28

    如何检查字符串以字符验证开头

  29. 29

    如何在kotlin中检查以指定字符串开头的字符串?

热门标签

归档