以下是获取数据库列表的一种方法:
SELECT table_schema 'dattabase_name'
FROM information_schema.tables
GROUP BY table_schema;
但是,如果列表包含特定前缀,我只需要SELECT
列表。我尝试了以下一些组合,但没有成功:
SUBSTR('database',0,10),
SUBSTR(mysqltable_schema 'database' FROM 0 FOR 10),
我也尝试过:
SELECT SCHEMA_NAME, SUBSTR(SCHEMA_NAME, 0, 10) from information_schema.SCHEMATA
SELECT SCHEMA_NAME, SUBSTR(SCHEMA_NAME, FROM 0 FOR 10) from information_schema.SCHEMATA;
如何获取数据库名称的 substr
前缀?
最佳答案
String positions in MySQL start at 1 ,因此需要使用 SUBSTR(str, 1, 10) 来获取前 10 个字符。尝试这个查询:
SELECT table_schema as `database`, SUBSTR(table_schema, 1, 10) AS `dbprefix`
FROM `TABLES`
WHERE SUBSTR(table_schema, 1, 10) LIKE '%form%'
GROUP BY table_schema
关于mysql - 获取数据库名称前缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58160778/