php - 比较 MYSQL 中的两个表

标签 php mysql sql sqlite

我必须比较两个表,然后将它们全部列为复选框,而匹配的值应该被选中,不匹配的值则不被选中

//表1

rid| role_name  
1  |    school  
2  |    college  
3  |  University  

//表2

id|rid | category  
1 | 1  |  uniform  
2 | 2  |  uniform

从两个表中匹配去掉,其中类别 = 'uniform' 列出所有并检查匹配的rid

最佳答案

    $query = "select t1.rid, 'matched' as matching from table1 t1 where t1.rid  in (
              select rid from table2 where category = 'uniform')
             union
             select t1.rid ,'notmatched' from table1 t1 where t1.rid not in (
             select rid from table2 where category = 'uniform')";
    $result = mysqli->query($query);
    $fetched = $result->fetch_assoc();
    foreach($fetched as $row){
    if($row['matching'] = 'matched'){
           echo "<input type='checkbox' name='{$row['rid']}' value='' checked='checked' >"; }
    else{ 
            echo "<input type='checkbox' name='{$row['rid']}' value=''  >"; }
     }

SQL DEMO

关于php - 比较 MYSQL 中的两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18826146/

相关文章:

javascript - 如何从php获取数据并将其传递给另一个oojs

php - 对多个 join 语句的结果进行排序的最佳方法

mysql - 在 Phpmyadmin 中上传 MySql 大文件

sql - 如何查看记录是否更新?

sql - postgresql 每月创建天数表

mysql - sql - 结果得到行位置

php - Laravel 和 mySQL 以及关系表

php - 如何在 php/codeigniter 或 mysql 中获取相差 20 分钟的两个日期的所有组合

php - 如何从 PHP 中的 mysql 数据库中获取 unicode 字符

PHP MySQL更新表行实际上没有更新,没有错误