0

如果已经问过这个问题,请原谅我,但是......我正在尝试从数据库中的 2 个不同表中选择数据,并计算一个表中与第二个表中的数据相等的所有数据(如果有意义的话) ? 下面是我尝试使用的代码

$select = "SELECT * FROM client_id, clientid, COUNT(client_id) FROM enquiry, check_s WHERE client_id = clientid";
4

2 回答 2

1

您的查询似乎在语法上是错误的。您可以尝试在主键(id?)和您尝试匹配的任何其他字段上连接两个表。基本语法如下:

SELECT * FROM 
DB1.Table1 
JOIN DB2.Table2 
ON DB1.Table1.PrimaryKey = DB2.Table2.PrimaryKey;

如果您正在寻找精确的数据匹配,您可能必须根据所有字段连接表(在ON上述查询的子句中)。

编辑:

既然你已经解释过了,你可以试试这个:

SELECT table1.*, count(*) as `n` FROM table1
JOIN table2 
ON table1.field = table2.field;

同样,如果您需要比较更多字段,只需将它们包含在ON子句中,并在子句中设置条件WHERE

于 2012-10-26T11:45:28.903 回答
0

我想你可能正在寻找这样的东西:

假设您的主表名称是 Client,您的辅助表(来自表单)是 Inquiry,您要在 client 中比较的列称为 client_id,而 Inquiry 中的同一列称为 clientid。然后你有

Select Count(Client.*)
From Client, Enquiry
Where Client.client_id = Enquiry.clientid
Group by Client.client_id
于 2012-10-26T12:14:10.347 回答