Så här skulle du konna lägga in get_crew_power() som en SP:
Kod:
DELIMITER $$
CREATE PROCEDURE `get_crew_power`(in param_crew_id int)
BEGIN
SELECT SUM(t.totPower) AS total_crew_power
FROM crew_members cm
JOIN members m ON m.member_id = cm.user_id
JOIN
(SELECT m.member_id,
(SUM(i.item_stat) + MAX(m.member_attack) + MAX(m.member_defence)) AS totPower
FROM members m
JOIN memberitems mi ON m.member_id = mi.memberitems_member
JOIN items i ON i.item_id = mi.memberitems_item
GROUP BY m.member_id)t ON t.member_id = m.member_id
WHERE cm.crew_id = param_crew_id
GROUP BY cm.crew_id ;
END$$
För att anropa SPn från PHP MED felhantering skriver du så här:
Kod:
if (!$db->query("CALL get_crew_power(" . crew_id . ")"))
{
echo "CALL failed: (" . $db->errno . ") " . $db->error;
}
För att anropa SPn från PHP UTAN felhantering skriver du så här:
Kod:
$db->query("CALL get_crew_power(" . crew_id . ")")