错误的是我的sql语法

az31mfrm  于 2021-06-21  发布在  Mysql
关注(0)|答案(4)|浏览(354)

我正试图查询我的数据库。
这是我的 SQL 代码:

SELECT `traveller.ticket_no`,`traveller`.`fname`,`traveller`.`lname`,`destination`.`d_name`,`plane`.`plane_name`,`flights`.`flight_name`
FROM `traveller`,`destination`,`flights`,`plane`,`checked`
WHERE `destination`.`destination_id`=`flights`.`d_id`,`plane`.`plane_id`=`flights`.`p_id`,`checked`.`flight_id`=`flights`.`flight_id`,`checked`.`t_id`=`traveller`.`ticket_no`
AND `traveller`.`ticket_no`="1"

我得到的错误是:
1064-您的sql语法有错误;
检查与您的mariadb服务器版本相对应的手册,以了解在第3行的“plane.plane\u id=flights.p\u id,checked.flights\u id=flights.flights\u id”附近使用的正确语法
我脑子里怎么了 SQL 声明。非常感谢您的帮助。

8fsztsew

8fsztsew1#

你可能需要

SELECT `traveller.ticket_no`,`traveller`.`fname`,`traveller`.`lname`,
        `destination`.`d_name`,`plane`.`plane_name`,
        `flights`.`flight_name`
    FROM `traveller`,`destination`,`flights`,`plane`,`checked`
    WHERE `destination`.`destination_id`=`flights`.`d_id` 
        and `plane`.`plane_id`=`flights`.`p_id` 
        and `checked`.`flight_id`=`flights`.`flight_id` 
        and `checked`.`t_id`=`traveller`.`ticket_no`
        AND `traveller`.`ticket_no`="1"

也可能值得研究一个更新的 JOIN 语法。
(只是从最初的评论中补充)不同之处在于,你的文章中的子句之间有一个逗号 WHERE 声明,所以我把逗号改为 and .

b5buobof

b5buobof2#

更改为:

WHERE `destination`.`destination_id`=`flights`.`d_id` 

    and `plane`.`plane_id`=`flights`.`p_id` 

    and `checked`.`flight_id`=`flights`.`flight_id` 

    and `checked`.`t_id`=`traveller`.`ticket_no`

    AND `traveller`.`ticket_no`="1"
w8rqjzmb

w8rqjzmb3#

尝试此查询

SELECT traveller.ticket_no`,`traveller`.`fname`,`traveller`.`lname`,`destination`.`destination_id`,`destination`.`d_name`,`plane`.`plane_id`,`plane`.`plane_name`,`flights`.`flight_id`,`flights`.`p_id`,`flights`.`d_id`,`flights`.`flight_name`,`checked`.`t_id`,`checked`.`flight_id`

FROM `traveller`,`destination`,`flights`,`plane`,`checked`

WHERE `destination`.`destination_id`=`flights`.`d_id` AND `plane`.`plane_id`=`flights`.`p_id` AND `checked`.`flight_id`=`flights`.`flight_id` AND `checked`.`t_id`=`traveller`.`ticket_no` AND `traveller`.`ticket_no`="1"
ldxq2e6h

ldxq2e6h4#

使用这个查询我希望它能工作

SELECT `traveller.ticket_no`,`traveller`.`fname`,`traveller`.`lname`,`destination`.`d_name`,`plane`.`plane_name`,`flights`.`flight_name`
    FROM `traveller`,`destination`,`flights`,`plane`,`checked`
    WHERE `destination.destination_id`=`flights.d_id`,`plane.plane_id`=`flights.p_id`,`checked.flight_id`=`flights.flight_id`,`checked.t_id`=`traveller.ticket_no`
    AND `traveller.ticket_no`="1"

相关问题