博客发布SQL加入问题

时间:2013-12-10 08:01:47

标签: php mysql sql codeigniter

我目前正在CI(CodeIgniter Framework)上写博客。我有两张桌子:

  • Blog_Post表
  • Blog_Banners表

关系是一个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行

有人会碰巧看到错误吗?我已经被困在这一点上了。

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'“);