我目前正在CI(CodeIgniter Framework)上写博客。我有两张桌子:
关系是一个Blog_Post有很多Blog_Banners。
我正在尝试使用此功能检索特定博客帖子的所有博客横幅:
SELECT *
FROM 'blog_posts'
INNER JOIN 'blog_banners'
ON 'blog_posts.id' = 'blog_banners.blog_post_id'
WHERE 'blog_posts.id' = '3'
我一直收到这条消息:
#1064 - 您的SQL语法出错;查看与您的MySQL服务器版本相对应的手册,以便在''帖子'附近使用正确的语法INNER JOIN'banners'ON'poss.s.'='banners.post_id'WHER''poss.s.''在第2行
有人会碰巧看到错误吗?我已经被困在这一点上了。
答案 0 :(得分:3)
不要对表/列名称使用引号,请使用反引号。此外,不应引用整数:
SELECT *
FROM `blog_posts`
INNER JOIN `blog_banners`
ON `blog_posts`.`id` = `blog_banners`.`blog_post_id`
WHERE `blog_posts`.`id` = 3
但由于没有保留字,你可以在没有反引号的情况下做得很好
答案 1 :(得分:-1)
$ this-> db-> query - (“SELECT * 来自'blog_posts' INNER JOIN'blog_banners' ON'blog_posts.id'='blog_banners.blog_post_id' 在哪里'blog_posts.id'='3'“);