大家好。在这里遇到麻烦。必须使用具有相同MySQL和PHPmyadmin版本的Webhotel,但反应不同。使用MySQL.ini可能会有所帮助。

如何从Using中将其重写为ON。

SELECT wiederquist_elearn_question.idelearn_question AS idelearn_question, idelearn_answer, idelearn_user, name, email, address, zip, city, phone, extra, user_created_time, newsletter, answertime, title, description, illustration, answertext, correct
FROM wiederquist_elearn_user
INNER JOIN wiederquist_elearn_question_answered
USING ( idelearn_user )
INNER JOIN wiederquist_elearn_question
USING ( idelearn_question )
INNER JOIN wiederquist_elearn_answer
USING ( idelearn_answer )
WHERE name IS NOT NULL
AND idelearn =1


希望你能在这里帮助我。谢谢。

编辑:

现在我知道了,但是它显示了11.700个结果,应该只显示2个。但这是正确的结果,只是循环而已。

SELECT wiederquist_elearn_question.idelearn_question AS idelearn_question, name, email, address, zip, city, phone, extra, user_created_time, newsletter, answertime, title, description, illustration, answertext, correct
FROM wiederquist_elearn_user
INNER JOIN wiederquist_elearn_question_answered ON wiederquist_elearn_question_answered.idelearn_user
INNER JOIN wiederquist_elearn_question ON wiederquist_elearn_question.idelearn_question
INNER JOIN wiederquist_elearn_answer ON wiederquist_elearn_answer.idelearn_answer
WHERE name IS NOT NULL
AND idelearn =1


数据库表:

    CREATE TABLE `wiederquist_elearn` (
  `ideLearn` int(11) unsigned NOT NULL auto_increment COMMENT 'id',
  `name` varchar(250) default 'uden navn' COMMENT '''Kursus nav',
  `correctRequired` int(1) default '0' COMMENT '''Korrekt svar påkrævet for at fortsætt',
  `successNumber` int(11) default '0' COMMENT '''Antal korrekte svar krævet for "bestået',
  `displayMode` varchar(45) default 'single' COMMENT '''Ved systemets opstart, enkeltvisning eller listevisnin',
  `repeatable` int(1) default '0' COMMENT 'Kan kurset gentages',
  `learning` int(1) default '0',
  `mandatory` int(1) default '0',
  `errorMessage` text,
  PRIMARY KEY  (`ideLearn`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

CREATE TABLE `wiederquist_elearn_answer` (
  `idelearn_answer` int(10) unsigned NOT NULL auto_increment,
  `answertext` text,
  `correct` int(1) default NULL,
  `idelearn_question` int(10) unsigned default NULL,
  `order` int(10) unsigned default NULL,
  `correctText` text,
  PRIMARY KEY  (`idelearn_answer`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;

CREATE TABLE `wiederquist_elearn_question` (
  `idelearn_question` int(10) unsigned NOT NULL auto_increment,
  `title` text,
  `description` text,
  `idelearn` int(10) unsigned default NULL,
  `illustration` varchar(150) default 'dummy.jpg',
  PRIMARY KEY  (`idelearn_question`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

CREATE TABLE `wiederquist_elearn_question_answered` (
  `idelearn_question_answered` int(10) unsigned NOT NULL auto_increment,
  `idelearn_user` int(10) unsigned default NULL,
  `idelearn_question` int(10) unsigned default NULL,
  `idelearn_answer` int(10) unsigned default NULL,
  `answertime` timestamp NULL default CURRENT_TIMESTAMP,
  PRIMARY KEY  (`idelearn_question_answered`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

CREATE TABLE `wiederquist_elearn_user` (
  `idelearn_user` int(10) unsigned NOT NULL auto_increment,
  `name` varchar(250) default NULL,
  `email` varchar(250) default NULL,
  `address` varchar(200) default NULL,
  `zip` int(4) default NULL,
  `city` varchar(90) default NULL,
  `phone` varchar(45) default NULL,
  `extra` varchar(250) default NULL,
  `user_created_time` timestamp NULL default CURRENT_TIMESTAMP,
  `newsletter` int(1) default NULL,
  PRIMARY KEY  (`idelearn_user`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

最佳答案

我做的!好极了

SELECT wiederquist_elearn_question.idelearn_question AS idelearn_question, wiederquist_elearn_answer.idelearn_answer, wiederquist_elearn_user.idelearn_user, name, email, address, zip, city, phone, extra, user_created_time, newsletter, answertime, title, description, illustration, answertext, correct
FROM wiederquist_elearn_user
INNER JOIN wiederquist_elearn_question_answered
USING ( idelearn_user )
INNER JOIN wiederquist_elearn_question
USING ( idelearn_question )
INNER JOIN wiederquist_elearn_answer ON wiederquist_elearn_answer.idelearn_answer = wiederquist_elearn_question_answered.idelearn_answer
WHERE name IS NOT NULL and idelearn = 1


谢谢你们

关于php - 将SQL语句从USING重写为ON,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4105092/

10-11 01:36