22. Use a JOIN query
$rows = $db->query ("
select department.name as department, course.title as course
from school
join department on school_id = school.id
join course on department_id = department.id
");
foreach ($rows as $row) {
echo $row->department . ": " . $row->course);
}
=> ONE database statement !!!
26. Retrieving too many records
$schools = new SchoolEntities();
foreach ($schools->departments as $department) {
foreach ($department->courses as $course) {
if ($course->category == "SQL" &&
$course->level == "expert")) {
echo $department->name . ": " . $course->title);
}
}
}
=> 3 records, still 10001 queries
27. Use a JOIN query
$rows = $db->query ("
select department.name as department, course.title as course
from school
join department on school_id = school.id
join course on department_id = department.id
where course.category = 'SQL' and course.level = 'expert'
");
foreach ($rows as $row) {
echo $department . ": " . $course);
}
=> ONE database statement !!!
53. Oracle SQL Cache
<?php
$db = new PDO('oci:dbname=sid', 'username', 'password');
$data = Array();
$data[] = $db->query("select * from country where code = 'AT'");
$data[] = $db->query("select * from country where code = 'AU'");
$data[] = $db->query("select * from country where code = 'NZ'");
$data[] = $db->query("select * from country where code = 'ES'");
?>