wordpress - 从数据库中从多个表匹配条件中获取数据

标签 wordpress mysql

我想从数据库中获取数据。我的数据库中有三个表:listing_master_residentiallisting_master_condolisting_master_commercial。所有表中都有一个主键,Ml_num。我想从一张与 mls 号码表匹配的表中搜索数据。

if (isset($_POST['search'])) {
    $mls=$_POST['mls_number'];
    $sql = "SELECT * FROM listing_master_residential,
        listing_master_condo, 
        listing_master_commercial  
        INNER JOIN listing_master_residential AS res ON res.Ml_num=Ml_num
        INNER JOIN listing_master_condo AS con ON con.Ml_num=Ml_num
        INNER JOIN listing_master_commercial AS com ON com.Ml_num=Ml_num
        WHERE Ml_num='$mls'";
    $result = $wpdb->get_results($sql) or die(mysql_error());
    foreach ( $result as $row) {
        echo $row->Lot_code."<br/>";
        echo $row->Ml_num."<br/>";
        echo $row->Acres;
        echo $row->Addr."<br/>";
        echo $row->Bath_tot;
        echo $row->Br;
        echo $row->Br_plus;
    }
}

通过上述操作,我收到错误:

Column 'Ml_num' in where clause is ambiguous

最佳答案

由于 Ml_num 列位于所有选项卡中,因此您需要使用完全限定名称对其进行寻址,例如 con.Ml_num

我也注意到您将所有表格连接两次,一次使用隐式连接,一次使用 ANSI 连接 隐式联接将导致交叉联接,因为 where 子句中没有联接条件。

关于wordpress - 从数据库中从多个表匹配条件中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25914875/

相关文章:

php - 如何为 wordpress WP_QUERY 清理 $_POST?

php - 如何按分类术语从自定义 WordPress MySQL 查询中排除结果

php - 如果名称存在则另存为 name(1) name(2) 等等

javascript - 表单不将数据保存到 mySQL 表中

java - Java中的垃圾字符删除

php - mysql #1067 - 'created_at' 的默认值无效

php - Wordpress:事件主题未显示在 'Themes' 文件夹中

wordpress - 高级自定义字段 - 按先前选择的分类法过滤帖子对象字段

python - Python 并安装 mysql 连接器

mysql - 改进mysql查询