MySQL按特定字母排序查询

时间:2013-02-15 10:54:58

标签: mysql

我有一个包含很多folderNames和Directory名称的mysql表,例如“C:\ xx \ xyz”或“C:\ xx”或“C:\ xx \ xyz \ abc”。

现在我必须通过此反斜杠的计数对此Query进行排序。我首先需要Dir C:\ xx,因为在我可以在其中创建子目录之前我必须创建此目录。

我该怎么做?

3 个答案:

答案 0 :(得分:1)

这样的事情:

SELECT dirName
FROM yourTable
ORDER BY (LENGTH(dirName) - LENGTH(REPLACE(dirName, '\\', '')))

答案 1 :(得分:0)

SQLFillde demo

ORDER BY LENGTH(folder)-LENGTH(REPLACE(folder,'\\',''))

答案 2 :(得分:0)

通常没有必要按顺序创建目录:

C:\>mkdir test

C:\>dir test
 El volumen de la unidad C es Sistema
 El número de serie del volumen es: 6882-2759

 Directorio de C:\test

15/02/2013  12:01    <DIR>          .
15/02/2013  12:01    <DIR>          ..
               0 archivos              0 bytes
               2 dirs  115.358.355.456 bytes libres

C:\>mkdir test\foo\bar\one\two\three

C:\>dir test
 El volumen de la unidad C es Sistema
 El número de serie del volumen es: 6882-2759

 Directorio de C:\test

15/02/2013  12:02    <DIR>          .
15/02/2013  12:02    <DIR>          ..
15/02/2013  12:02    <DIR>          foo
               0 archivos              0 bytes
               3 dirs  115.358.355.456 bytes libres

C:\>