23-08-2022, 11:02 AM
هنا اجريت استعلامين يؤديان نفس المهمة ولكن لاحظت ان احدهما يبدو اسرع من الثاني
فيبدو ان العبارة Join لست الخيار الأمثل عند الرغبة في التنفيذ بشكل اسرع
الاستعلام الاول
النتيجة
الاستعلام الثاني
النتيجة
[size=1]
[/size]
فيبدو ان العبارة Join لست الخيار الأمثل عند الرغبة في التنفيذ بشكل اسرع
الاستعلام الاول
كود :
select
groubs.id,
groubs.groub_name,
count( sanf.id ) count_of_id
from groubs
inner join sanf on (groubs.id = sanf.f_class)
group by
groubs.id,
groubs.groub_nameالنتيجة
كود :
Query
------------------------------------------------
Plan
------------------------------------------------
Query Time
------------------------------------------------
Prepare : 0.00 ms
Execute : 15.00 ms
Avg fetch time: 1.67 ms
Memory
------------------------------------------------
Current: 34,972,744
Max : 35,020,976
Buffers: 2,048
Operations
------------------------------------------------
Read : 1
Writes : 0
Fetches: 3,903
Marks : 0
Enchanced Info:
+-------------------------------+-----------+-----------+-------------+---------+---------+---------+----------+----------+----------+
| Table Name | Records | Indexed | Non-Indexed | Updates | Deletes | Inserts | Backouts | Purges | Expunges |
| | | Total | reads | reads | | | | | | |
+-------------------------------+-----------+-----------+-------------+---------+---------+---------+----------+----------+----------+
|GROUBS | 12 | 648 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
|SANF | 648 | 0 | 648 | 0 | 0 | 0 | 0 | 0 | 0 |
+-------------------------------+-----------+-----------+-------------+---------+---------+---------+----------+----------+----------+الاستعلام الثاني
كود :
select
groubs.id,
groubs.groub_name,
(select count(id) from sanf where sanf.f_class = groubs.id)
from groubsالنتيجة
كود :
Query
------------------------------------------------
Plan
------------------------------------------------
Query Time
------------------------------------------------
Prepare : 0.00 ms
Execute : 0.00 ms
Avg fetch time: 0.00 ms
Memory
------------------------------------------------
Current: 34,972,744
Max : 35,020,976
Buffers: 2,048
Operations
------------------------------------------------
Read : 0
Writes : 0
Fetches: 1,352
Marks : 0
Enchanced Info:
+-------------------------------+-----------+-----------+-------------+---------+---------+---------+----------+----------+----------+
| Table Name | Records | Indexed | Non-Indexed | Updates | Deletes | Inserts | Backouts | Purges | Expunges |
| | Total | reads | read | | | | | | |
+-------------------------------+-----------+-----------+-------------+---------+---------+---------+----------+----------+----------+
|GROUBS | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 |
|SANF | 0 | 648 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+-------------------------------+-----------+-----------+-------------+---------+---------+---------+----------+----------+----------+[size=1]
[/size]