php - Mysql查询没有收到任何数据

标签 php mysql database

这是我尝试运行的查询,它正在运行,但现在由于某种原因我无法弄清楚它现在已经放弃了。

SELECT films.movie_title, films.rating, films.actor, reviewed.review
      FROM films
      INNER JOIN reviewed
      ON films.movie_id=reviewed.review_id

在浏览表格时,我遇到了这个问题。认为这可能是问题所在。

ALTER TABLE `reviewed`
  ADD CONSTRAINT `reviewed_ibfk_1` FOREIGN KEY (`movie_id`) REFERENCES `films` (`movie_id`),
  ADD CONSTRAINT `reviewed_ibfk_2` FOREIGN KEY (`movie_id`) REFERENCES `films` (`movie_id`) ON DELETE CASCADE;

--
-- Table structure for table `films`
--

CREATE TABLE IF NOT EXISTS `films` (
  `movie_id` int(4) NOT NULL AUTO_INCREMENT,
  `movie_title` varchar(100) NOT NULL,
  `actor` varchar(100) NOT NULL,
  `rating` varchar(20) NOT NULL,
  PRIMARY KEY (`movie_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=23 ;

--
-- Dumping data for table `films`
--

INSERT INTO `films` (`movie_id`, `movie_title`, `actor`, `rating`) VALUES
(22, 'Batman Begins', 'Bale', 'Good');

-- --------------------------------------------------------

--
-- Table structure for table `reviewed`
--

CREATE TABLE IF NOT EXISTS `reviewed` (
  `review_id` int(4) NOT NULL AUTO_INCREMENT,
  `review` mediumtext NOT NULL,
  `movie_id` int(4) NOT NULL,
  PRIMARY KEY (`review_id`),
  KEY `movie_id` (`movie_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `reviewed`
--

INSERT INTO `reviewed` (`review_id`, `review`, `movie_id`) VALUES
(1, 'Really good film.', 22);

--
ALTER TABLE `reviewed`
  ADD CONSTRAINT `reviewed_ibfk_1` FOREIGN KEY (`movie_id`) REFERENCES `films` (`movie_id`),
  ADD CONSTRAINT `reviewed_ibfk_2` FOREIGN KEY (`movie_id`) REFERENCES `films` (`movie_id`) ON DELETE CASCADE;

最佳答案

看起来您正在加入两个主键 (films.movi​​e_id=reviewed.review_id),而不是一个主键和一个外键 (films.movi​​e_id=reviewed.movi​​e_id)。

试试下面的方法:

SELECT films.movie_title, films.rating, films.actor, reviewed.review
      FROM films
      INNER JOIN reviewed
      ON films.movie_id=reviewed.movie_id

关于php - Mysql查询没有收到任何数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19013915/

相关文章:

php - 类型提示 : Default Parameters

mysql - Ansible:删除多个数据库 MySQL 时出错

database - 归一化 : im new to db normalisation. 我不知道我的答案是否正确

python - pandas to_sql 引发错误 'Identifier name is too long'

java - 如何在JPA中正确实现相关实体的乐观锁

php - 如何选择以起始值开头的数据库?

php - MySQL POP 最后一行并将其删除

php - 如何在 Yii 框架中获取用户 ID 而不是名称?

javascript - Facebook 封面图片重新定位代码

mysql - 在 MySQL 中是否可以插入 NULL 和 DEFAULT 值?