简体   繁体   English

如何检查一个表到另一个表的ID?

[英]How to check id of one table to another table?

How to find whether distinct value id of one table exits to another tables or not using php. 如何使用php查找一个表的不同值id是否退出到另一个表。

For example: Let table1 have id (not primary or unique) 4 , 5 , 6 , 4 , 6 , how to check if id of table2 have 4 , 5 , 6 or not ? 例如:让table1具有id (未伯或唯一的) 45646 ,如何检查idtable2456或不?

$query_check= "select distinct(project_code) from table1";
$projects_check = mysql_query($query_check);

while ($result_check = mysql_fetch_array($projects_check)){
    $all[] = $result_check[0];  
}

$query = "select id from table2";
$projects = mysql_query($query);
while ($result = mysql_fetch_array($projects)){
    foreach($all as $all_val){
        $pro_code = $result[0];
        if($pro_code != $all_val){ }
    }
}

This SQL may help: 该SQL可能会帮助:

SELECT table2.id 
FROM table2
WHERE table2.id NOT IN (
    SELECT DISTINCT table1.id
    FROM table1
)
SELECT table2.id 
FROM table2
WHERE table2.id IN (
    SELECT DISTINCT table1.id
    FROM table1
)

To get a list of all the project codes from table1 that are ids in table2:- 要获取来自table1的所有项目代码的列表,这些代码是table2中的ID:

SELECT DISTINCT table1.project_code  
FROM table1
INNER JOIN table2
ON table1.project_code = table2.id

To get a list of all the project codes from table1 that are NOT ids in table2 要获取table1中不是table2中的id的所有项目代码的列表

SELECT DISTINCT table1.project_code  
FROM table1
LEFT OUTER JOIN table2
ON table1.project_code = table2.id
WHERE table2.id IS NULL

If it is the entries on 2 that you want that are not on 1 如果您要的是2上的条目而不是1

SELECT DISTINCT table2.id  
FROM table2
LEFT OUTER JOIN table1
ON table1.project_code = table2.id
WHERE table1.project_code IS NULL

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM