如何从数据库表中找到类似的列名?
例如
数据库表
1_1 1_2 1_3 5_6 67
| | | |
| | | |
因此,1_1,1_2,1_3,5_6和67是数据库表的列名。我想只检索以1(1_1,1_2和1_3)开头的列名。我尝试了sql查询,但它工作..
SELECT 1 LIKE'%1%'来自sheet1;
它显示了这个简短的内容
1 LIKE '%1%'
1
1
答案 0 :(得分:0)
答案 1 :(得分:0)
这可能对你有用
SELECT COLUMN_NAME from information_schema.COLUMNS where TABLE_NAME='table' AND TABLE_SCHEMA='database_name'
information_schema是包含有关所有数据库的元数据的数据库,所以当您想要这种数据时,只需在其上启动查询
答案 2 :(得分:0)
试试这个:
SELECT GROUP_CONCAT(COLUMN_NAME) INTO @s
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'database_name' AND TABLE_NAME = 'tableName' AND
COLUMN_NAME LIKE '1%';
SET @sql = CONCAT('SELECT ', @s, ' FROM tableName');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;