Php 从多个表中统计不同的用户id
我有大约5个带有公共字段“userid”的表,我想在所有这些表中计算不同的userid。某些用户ID可能出现在其中的两个表中。但是我想把5个表中不同用户ID的联合计算在一起。我能够使用ff代码在一个表中统计不同的用户ID。我想能从所有的桌子上数数Php 从多个表中统计不同的用户id,php,mysql,sql,database,Php,Mysql,Sql,Database,我有大约5个带有公共字段“userid”的表,我想在所有这些表中计算不同的userid。某些用户ID可能出现在其中的两个表中。但是我想把5个表中不同用户ID的联合计算在一起。我能够使用ff代码在一个表中统计不同的用户ID。我想能从所有的桌子上数数 //just count the nuber of distict userids in table1 $query2 = ("SELECT COUNT(DISTINCT userid) FROM table1"); $result2
//just count the nuber of distict userids in table1
$query2 = ("SELECT COUNT(DISTINCT userid) FROM table1");
$result2 = mysql_query($query2) or die(mysql_error());
$row2 = mysql_fetch_row($result2);
echo "Number of users in table 1 = ".$row2[0] ."<br />";
**Table 1**
Id userid name adresss
**Table 2**
Id Title Sex userid
**Table 3**
Id userid amount
**Table 4**
Id price promotion userid productid
**Table 5**
Id userid category tax weight
使用工会
与UNION ALL不同,标准UNION将从结果集中删除重复的值。你的陈述看起来像
SELECT COUNT(*)
FROM (
SELECT UserID FROM Table1
UNION SELECT UserID FROM Table2
UNION SELECT UserID FROM Table3
UNION SELECT UserID FROM Table4
UNION SELECT UserID FROM Table5
) AS UserIDs
默认情况下,UNION运算符仅选择不同的值。容许
重复值,使用UNION ALL
这看起来像是一个标准的表格设置。。。你为什么要数这些桌子?有人会假设你有一个表在某处生成唯一的用户ID,你可以从表1中得到计数。请帮我看一下这个棘手的问题@astymore-我刚刚做了,如果这不是你想要的,请告诉我们。谢谢,它工作得很好。只有语法错误空间btn COUNT和方括号,但效果良好。