我有一个问题
$STH_1 = $DBH_R->query("SELECT table_name
FROM information_schema.tables
WHERE table_name
LIKE 'v_c_ei\_9%'
");
$stmts_1 = array();
while (($row_1 = $STH_1 -> fetch_assoc()) !== null){
$table_name = $row_1['table_name'];
此查询的结果通常是按顺序排列的表列表:
v_c_ei_9001
v_c_ei_9002
...........
v_c_ei_9030
在另一个表 v_c_country
中,我有 2 列:table_name
和 country_name
,
(因为例如,v_ei_c_9001
是澳大利亚
,v_ei_c_9012
是英国
等)
通常,作为结果,我需要来自上面查询的表(表名)列表,但在 ORDER ASC 中来自表 v_c_country
的国家名称。
如何更改查询?
最佳答案
SELECT t.table_name
FROM information_schema.tables AS t
JOIN v_c_country AS c ON t.table_name = c.table_name
WHERE t.table_name LIKE 'v_c_ei\_9%'
ORDER BY c.country_name ASC;
为了测试和验证,将c.country_name
添加到选择列表中。
关于mysql - SELECT 但顺序由另一个表中的数据控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10564369/