Zwei Query in einem, Wie?

_voodoo

Erfahrenes Mitglied
PHP:
$qry_1 = mysql_query ("select count(topic_id) as `themen` from `topics` where `forum_id` = '".$row['forum_id']."'") or die (mysql_error ());
$qry_2 = mysql_query ("select count(post_id) as `beitraege` from `posts` where `forum_id` = '".$row['forum_id']."'") or die (mysql_error ());
Wie kann ich diese zwei Queries unter einem Dach vereinen?
Hab es schon so probiert, aber erfolglos:
PHP:
$get_qry = mysql_query ("select count(t.topic_id) as themen, count(p.post_id) as beitraege from topics t, posts p where t.forum_id = '".$row['forum_id']."' or p.forum_id = '".$row['forum_id']."'") or die (mysql_error ());

Bin dankbar für Hilfe.
 
Versuch mal Folgendes:
PHP:
<?php
	[…]
	$query = "
		SELECT
		        COUNT(`t`.`topic_id`) AS `themen`,
		        COUNT(`p`.`post_id`) AS `beitraege`

		  FROM
		        `topics` `t`,
		        `posts` `p`

		  WHERE
		        `t`.`forum_id` = '".$row['forum_id']."'
		    AND `t`.`forum_id` = `p`.`forum_id`
		";
	[…]
?>
 
Zuletzt bearbeitet:
Sowas hat ich auch schon, bringt aber leider folgende Meldung:
Error hat gesagt.:
Column: 'forum_id' in where clause is ambiguous

ambiguous = vieldeutig

Kann man das vllt. mittels "left join" machen?!
 
Zuletzt bearbeitet:
So, es klappt doch wie Gumbo es mir gegeben hat, der Array hies nicht $row ...

Falls aber jmd eine längere Version mit left join suchen sollte:
PHP:
$query = "select 
  count(`t`.`topic_id`) as `themen`,
  count(`p`.`post_id`) as `beitraege`
from
  `topics` `t`
left join
  `posts` `p`
on
  `p`.`forum_id` = '".$inna_row['forum_id']."'
where
  `t`.`forum_id` = '".$inna_row['forum_id']."'
";
 
Zurück