我有许多列,其形式为: rp_id_1 rp_id_2 等等。 我想获取这些特定列的数据。 在论坛上,我看到以下建议的查询类型:
"SELECT column_name
FROM information_schema.columns
WHERE table_name='loc_tbl'
AND column_name LIKE 'rp%'"
但是,这仅返回列名,而不返回数据。 输出:
+-------------+
| column_name |
+-------------+
| rp_id_1 |
| rp_id_2 |
| rp_id_3 |
我想念什么?我如何获取所有这些列的数据呢?谢谢。
答案 0 :(得分:2)
我们可以使用动态MySQL来做到这一点。从MySQL命令行:
SELECT @cols := GROUP_CONCAT(column_name) FROM information_schema.columns
WHERE table_name = 'loc_tbl' AND column_name LIKE 'rp%';
SET @query = CONCAT("SELECT ", @cols, " FROM lob_tbl");
PREPARE stmt FROM @query;
EXECUTE stmt;
答案 1 :(得分:0)
选择
列名,*
FROM information_schema.columns
WHERE table_name ='loc_tbl'
AND column_name喜欢'rp%'“