diff options
author | Dries Buytaert <dries@buytaert.net> | 2003-09-09 18:18:43 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2003-09-09 18:18:43 +0000 |
commit | 8e657f64efb3c3e12365d1c33e6ab89e40d9bfd5 (patch) | |
tree | af96a46601a88e0be7089151a7bdb95afd54c310 /modules/taxonomy.module | |
parent | accebe358c1cb4b07e6dba7f9f7776fe3b09d242 (diff) | |
download | brdo-8e657f64efb3c3e12365d1c33e6ab89e40d9bfd5.tar.gz brdo-8e657f64efb3c3e12365d1c33e6ab89e40d9bfd5.tar.bz2 |
- Gerhard's uid 0 patches. These patches bring various performance
improvements. Requires a database update.
Diffstat (limited to 'modules/taxonomy.module')
-rw-r--r-- | modules/taxonomy.module | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/modules/taxonomy.module b/modules/taxonomy.module index 78aa3e42e..df46f6624 100644 --- a/modules/taxonomy.module +++ b/modules/taxonomy.module @@ -657,11 +657,11 @@ function taxonomy_select_nodes($taxonomy, $pager = 1) { if ($taxonomy->str_tids) { if ($taxonomy->operator == "or") { - $sql = "SELECT DISTINCT(n.nid), n.title, n.type, n.created, n.changed, n.uid, n.static, n.created, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid LEFT JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' ORDER BY static DESC, created DESC"; - $sql_count = "SELECT COUNT(DISTINCT(n.nid)) FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid LEFT JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1'"; + $sql = "SELECT DISTINCT(n.nid), n.title, n.type, n.created, n.changed, n.uid, n.static, n.created, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' ORDER BY static DESC, created DESC"; + $sql_count = "SELECT COUNT(DISTINCT(n.nid)) FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1'"; } else { - $sql = "SELECT n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid LEFT JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' GROUP BY n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name HAVING COUNT(n.nid) = ".count($taxonomy->tids)." ORDER BY static DESC, created DESC"; + $sql = "SELECT n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' GROUP BY n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name HAVING COUNT(n.nid) = ".count($taxonomy->tids)." ORDER BY static DESC, created DESC"; // Special trick as we could not find anything better: $count = db_num_rows(db_query("SELECT n.nid FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' GROUP BY n.nid HAVING COUNT(n.nid) = ". count($taxonomy->tids))); |