Optimised the amount of function for the item query

This commit is contained in:
Michael Vogel 2016-06-19 08:32:38 +02:00
parent c3ed6f7d01
commit 91db7a549c
3 changed files with 40 additions and 91 deletions

View file

@ -73,11 +73,11 @@ function notes_content(&$a,$update = false) {
$sql_extra = " AND `allow_cid` = '<" . $a->contact['id'] . ">' ";
$r = q("SELECT COUNT(*) AS `total`
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
FROM `item` %s
WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note'
AND `contact`.`self` AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall`
$sql_extra ",
contact_condition(), item_condition(),
item_joins(), item_condition(),
intval(local_user())
);
@ -87,13 +87,12 @@ function notes_content(&$a,$update = false) {
$a->set_pager_itemspage(40);
}
$r = q("SELECT `item`.`id` AS `item_id` FROM `item`
LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s AND `contact`.`self`
$r = q("SELECT `item`.`id` AS `item_id` FROM `item` %s
WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note'
AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall`
$sql_extra
ORDER BY `item`.`created` DESC LIMIT %d ,%d ",
contact_condition(), item_condition(),
item_joins(), item_condition(),
intval(local_user()),
intval($a->pager['start']),
intval($a->pager['itemspage'])
@ -108,13 +107,11 @@ function notes_content(&$a,$update = false) {
$parents_arr[] = $rr['item_id'];
$parents_str = implode(', ', $parents_arr);
$r = q("SELECT %s FROM `item`
LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
$r = q("SELECT %s FROM `item` %s
WHERE %s AND `item`.`uid` = %d AND `item`.`parent` IN (%s)
$sql_extra
ORDER BY `parent` DESC, `gravity` ASC, `item`.`id` ASC ",
item_fieldlist(), contact_fieldlist(),
contact_condition(), item_condition(),
item_fieldlists(), item_joins(), item_condition(),
intval(local_user()),
dbesc($parents_str)
);