php - 如何从Mysql数据中获取文件夹数量

标签 php mysql

我在数据库中有一个值,如下所示

Field 2                             ! Field 2
----------------------------------------------
Rootfolder                          | v1
Rootfolder/subfolder1/            | v2
Rootfolder/subfolder1/subfolder2/ | v3    
Rootfolder2/subfolder1/subfolder2/ | v3

我想将结果设置为

Root[name] =Rootfolder
Root[subfolder] = subfolder1,Subfolder2

我使用 PHP 作为我的服务器端。我怎样才能使用 mysql 或 PHP 获得这个结果,任何人都可以帮助这方面...

最佳答案

在 MySQL 中,使用当前的结构:

SELECT SUBSTRING_INDEX(folder_field,'/',1) name
       SUBSTR(folder_field, LOCATE('/', folder_field) + 1) subfolder
  FROM table_name
 WHERE ...

或者,可能更好的是,将表更改为包含 name 列和 subfolder 列,并在必要时使用 CONCAT。

..或者用 PHP 来做。

更新

鉴于您可以尝试的新信息:

SELECT SUBSTRING_INDEX(folder_field,'%5c',1) name
       SUBSTR(folder_field, LOCATE('%5c', folder_field) + 3) subfolder
  FROM table_name
 WHERE ...

虽然我不知道这如何与 SUBSTRING_INDEX 一起使用

关于php - 如何从Mysql数据中获取文件夹数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25180845/

相关文章:

php 检查数据库中是否存在号码

php - 使用 Homebrew 软件在 MAC 上安装 PHP 和 Postgresql

php - XAMPP 错误 : Token mismatch

php - 健身房费用提交数据库设计

php - PHP 变量中不返回 MySQL 数据

MySQL从多个组条件中提取平均数据

php - zend_db 的问题

php - 上传图片时无法在 laravel 5.1 中创建目录?

mysql - 用 PHP 清理撇号

MySQL 创建用户购物车中相似商品的分布或频率列表