Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算mysql中两个表之间的公共行数_Php_Mysql - Fatal编程技术网

Php 计算mysql中两个表之间的公共行数

Php 计算mysql中两个表之间的公共行数,php,mysql,Php,Mysql,这是我的问题 Hi在mysql中有两个表,称为go_H和go_J,两个表的外观如下: 去吧 加油 基本上,我想要实现的是查看go_J中的GoCode值出现在go_H的GoCode中,并对它们进行计数,这样我就可以得到两个表中存在的go ID总数 我来选择go_H.GoCode和go_J.GoCode,但我不知道如何比较它们以找到常见行,然后计算它们 有什么帮助吗 SELECT COUNT(*) FROM go_H INNER JOIN go_J USING GoCode 内部联接=>基于联接列

这是我的问题

Hi在mysql中有两个表,称为go_H和go_J,两个表的外观如下:

去吧

加油

基本上,我想要实现的是查看go_J中的GoCode值出现在go_H的GoCode中,并对它们进行计数,这样我就可以得到两个表中存在的go ID总数

我来选择go_H.GoCode和go_J.GoCode,但我不知道如何比较它们以找到常见行,然后计算它们

有什么帮助吗

SELECT COUNT(*) FROM go_H
INNER JOIN go_J USING GoCode
内部联接=>基于联接列(GoCode)的两个表中的行

备选方案:

SELECT COUNT(*) FROM go_H h
INNER JOIN go_J ON j.GoCode = h.GoCode
查看此答案以了解有关联接的信息:

内部联接=>基于联接列(GoCode)的两个表中的行

备选方案:

SELECT COUNT(*) FROM go_H h
INNER JOIN go_J ON j.GoCode = h.GoCode
查看此答案以了解有关联接的信息:

希望这能有所帮助

select count(*) from go_J j join  go_H h on h.GoCode=j.GoCode;
希望这有帮助

select count(*) from go_J j join  go_H h on h.GoCode=j.GoCode;

查找两个表之间有多少行相似

SELECT  COUNT(*) totalCount
FROM    go_H a 
        INNER JOIN go_J b
            ON a.GoCode = b.GoCode
查找go_H中有多少行不在go_J中

SELECT  COUNT(*) totalCount
FROM    go_H a 
        LEFT JOIN go_J b
            ON a.GoCode = b.GoCode
WHERE   b.GoCode IS NULL
查找go_J中有多少行不在go_H中

SELECT  COUNT(*) totalCount
FROM    go_J a 
        LEFT JOIN go_H b
            ON a.GoCode = b.GoCode 
WHERE   b.GoCode IS NULL

查找两个表之间有多少行相似

SELECT  COUNT(*) totalCount
FROM    go_H a 
        INNER JOIN go_J b
            ON a.GoCode = b.GoCode
查找go_H中有多少行不在go_J中

SELECT  COUNT(*) totalCount
FROM    go_H a 
        LEFT JOIN go_J b
            ON a.GoCode = b.GoCode
WHERE   b.GoCode IS NULL
查找go_J中有多少行不在go_H中

SELECT  COUNT(*) totalCount
FROM    go_J a 
        LEFT JOIN go_H b
            ON a.GoCode = b.GoCode 
WHERE   b.GoCode IS NULL

通过运行类似以下内容的查询,您可以在SQL中实现这一点:

SELECT
 *,
count (GoCode)
 FROM (    
SELECT GoCode FROM go_H
    UNION
    SELECT GoCode FROM go_H )a
group by a.gocode
这将为您提供一个列中包含每个代码的表,以及它在两个表中出现的次数

PHP的另一种选择是使用PDO将两个表都放入一个数组中,并使用in_数组进行检查

<?php
foreach ($go_H as $GoCode) {
    if (in_array($GoCode, $go_J)) {
        // handle codes in both tables
    }
}

只需在SQL中运行类似于以下内容的查询即可实现这一点:

SELECT
 *,
count (GoCode)
 FROM (    
SELECT GoCode FROM go_H
    UNION
    SELECT GoCode FROM go_H )a
group by a.gocode
这将为您提供一个列中包含每个代码的表,以及它在两个表中出现的次数

PHP的另一种选择是使用PDO将两个表都放入一个数组中,并使用in_数组进行检查

<?php
foreach ($go_H as $GoCode) {
    if (in_array($GoCode, $go_J)) {
        // handle codes in both tables
    }
}

在mysql中学习什么是
JOIN
在mysql中学习什么是
JOIN