【问题标题】:trouble with SQL Join statement and Referencing the items in my sql statementSQL Join 语句和引用我的 sql 语句中的项目的问题
【发布时间】:2014-03-10 21:33:48
【问题描述】:

首先,我认为我的 SQL Join 语句(语法或其他)存在错误。我在语句中使用了 2 个表,一个称为艺术家,另一个称为打印。接下来,在我的 php 脚本中,我使用 MYSQLI_ASSOC 提取数组引用我的 sql 语句中的项目。我觉得里面也有问题。

这里是sql语句:

    $sql = "SELECT CONCAT(a.first_name, a.middle_name, a.last_name) AS name p.print_name, p.price, p.size, p.description, p.what_genre, p.quantity_on_hand FROM artists AS a LEFT JOIN prints AS p USING (artist_id) ORDER BY $order_by $limit";

这是第二部分:

    while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){
            $bg = ($bg=='#eeeeee' ? '#ffffff' : '#eeeeee');
            $list .= '<tr bgcolor="' . $bg . '">';
            $list .= '<td>' . $row['name'] . '</td><td>' . $row['print_name'] . '</td><td>' . $row['price'] . '</td><td>' . $row['size'] . '</td><td>' . $row['description'] . '</td><td>' . $row['what_genre'] . '</td><td>' . $row['quantity_on_hand'] . '</td></tr>';
        } 

这是我收到的一些错误消息:

注意: 查询:SELECT CONCAT(a.first_name, a.middle_name, a.last_name) AS name p.print_name, p.price, p.size, p.description, p.what_genre, p.quantity_on_hand FROM Artists AS LEFT JOIN 打印 AS p USING (artist_id) ORDER BY price DESC LIMIT 0,5你的SQL语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'p.print_name, p.price, p.size, p.description, p.what_genre, p.quantity_on_hand F' 附近使用正确的语法

in D:\xampp\htdocs\larry\chapter192\view_users2.php on line 68

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in D:\xampp\htdocs\larry\chapter192\view_users2.php on line 110

【问题讨论】:

    标签: php sql join left-join


    【解决方案1】:

    AS namep.print_name 之间缺少逗号:

    SELECT CONCAT(a.first_name, a.middle_name, a.last_name) AS name, p.print_name
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-23
      • 1970-01-01
      • 2015-09-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多