我的 PHP 程序中有一个查询,例如SELECT table_a.firstname, table_a.lastname, table_b.english_score, table_b.maths_score FROM table_aINNER JOIN table_b ON table_b.student_id = table_a.id WHERE table_a.id = 21tables我想知道此查询中被叫者的姓名including joined tables。目的是找到进一步操作所需的受影响表的模式。是否有直接查询来执行此操作,或者我必须使用一些正则表达式?
1 回答
函数式编程
TA贡献1807条经验 获得超9个赞
您可以检索查询的执行计划,其中包括查询中涉及的所有表。
例如:
create table a (b int);
create table c (d int);
explain
select a.*
from a
join c on c.d = a.b
结果:
id select_type table partitions type pos_keys key key_len ref rows filt Extra
--- ------------ ------ ----------- ----- -------- ----- -------- ----- ----- ---- -------------
1 SIMPLE a null ALL null null null null 1 100 null
1 SIMPLE c null ALL null null null null 1 100 Using where..
在这里您可以看到第三列包含查询涉及的表的名称。执行计划采用表格格式(默认)或 JSON 格式。后者比这个有更多的信息。
- 1 回答
- 0 关注
- 83 浏览
添加回答
举报
0/150
提交
取消