从MYSQL sql中的搜索结果获取所有数据
大家好,我有多个表,我想通过以下代码获得具有特定列名的表:从MYSQL sql中的搜索结果获取所有数据,mysql,sql,database,Mysql,Sql,Database,大家好,我有多个表,我想通过以下代码获得具有特定列名的表: SELECT COLUMN_NAME AS 'ColumnName' ,TABLE_NAME AS 'TableName' FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'DATABASENAME' AND COLUMN_NAME LIKE '%columnName_I_Need%' // Example not actual search ORDER BY T
SELECT COLUMN_NAME AS 'ColumnName'
,TABLE_NAME AS 'TableName'
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'DATABASENAME'
AND COLUMN_NAME LIKE '%columnName_I_Need%' // Example not actual search
ORDER BY TableName
,ColumnName;
现在我想从结果表中获取所有数据。
例如,获取结果表中的所有列及其数据。
这是一个示例,但不起作用:
SELECT * WHERE columnName_I_Need = 1
MySQL可以做到这一点吗?
MySQL版本:
5.5.5-10.3.23 MariaDB
这是一个从表中访问数据的简单而基本的查询
从tablename中选择*
其中
可以在此处包含条件
*
用于选择每一列
可以使用列名访问特定列。这是一个简单而基本的查询,用于访问表中的数据
从tablename中选择*
其中
可以在此处包含条件
*
用于选择每一列
可以使用列名访问特定列。查询中缺少“发件人”。另外,当您指定列名时,它应该写在单引号内
SELECT * FROM your_table_name WHERE columnName_you_Need = 'colum_id'
查询中缺少“发件人”。另外,当您指定列名时,它应该写在单引号内
SELECT * FROM your_table_name WHERE columnName_you_Need = 'colum_id'
这相当复杂。如果只使用动态SQL,则需要循环机制。我的建议是生成SQL,然后手动运行:
SELECT GROUP_CONCAT('SELECT * FROM ', TABLE_NAME,
' WHERE ', COLUMN_NAME, ' = 1'
SEPARATOR ';
'
)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'DATABASENAME' AND
COLUMN_NAME LIKE '%columnName_I_Need%';
然后复制语句并手动运行。这相当复杂。如果只使用动态SQL,则需要循环机制。我的建议是生成SQL,然后手动运行:
SELECT GROUP_CONCAT('SELECT * FROM ', TABLE_NAME,
' WHERE ', COLUMN_NAME, ' = 1'
SEPARATOR ';
'
)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'DATABASENAME' AND
COLUMN_NAME LIKE '%columnName_I_Need%';
然后复制语句并手动运行。我认为这会非常复杂。但是你的建议让我的生活更轻松。谢谢,我会投票,并尝试接受它作为答案。PS:无法投票,但被接受为答案。我想这会很复杂。但是你的建议让我的生活更轻松。谢谢,我会投票,并尝试接受它作为答案。PS:无法投票,但被接受为答案。