即使知道SQL是正确的,MySQLi查询也会返回bool(false)

即使知道SQL是正确的,MySQLi查询也会返回bool(false)

问题描述:

The following query returns bool(false) when dumping the query:

        SELECT *
        FROM `account` 
        LEFT OUTER JOIN `player` ON `account`.`uid` = `player`.`account_uid` 
        UNION 
        RIGHT OUTER JOIN `player` ON `account`.`uid` = `player`.`account_uid`

I know that if the query returns false there was an error with the SQL however I'm sure the syntax is correct, I even ran it successful in my console and on phpMyAdmins SQL tool.

If I run it without

        LEFT OUTER JOIN `player` ON `account`.`uid` = `player`.`account_uid` 
        UNION 
        RIGHT OUTER JOIN `player` ON `account`.`uid` = `player`.`account_uid`

all is working.

What is the problem with my query?

Thanks in advance.

以下查询在转储查询时返回 bool(false) code>: p>

  SELECT * 
 FROM`account` 
 LEFT OUTER JOIN`plar` ON`county`uid` =`player``account_uid` 
 UNION 
 RIGHT OUTER JOIN  `player`ON`帐号`.uid` =`player` .account_uid` 
  code>  pre> 
 
 

我知道如果查询返回false,则出现错误 SQL但是我确信语法是正确的,我甚至在我的控制台和phpMyAdmins SQL工具上成功运行它。 p>

如果我在没有 p>

  LEFT OUTER JOIN`plar` ON`count``uid` =`player`的情况下运行它。  account_u` 
 UNION 
 RIGHT OUTER JOIN`plars` ON`帐号`.uid` =`player` .account_uid` 
  code>  pre> 
 
 

一切正常。 p>

我的查询有什么问题? p>

提前致谢。 p> div>

I managed to fix it myself by adding another

SELECT * FROM `account`

to the query. The full query now looks like this:

    SELECT *
    FROM `account` 
    LEFT OUTER JOIN `player` ON `account`.`uid` = `player`.`account_uid` 
    UNION 
    SELECT *
    FROM `account`
    RIGHT OUTER JOIN `player` ON `account`.`uid` = `player`.`account_uid`