gpt4 book ai didi

mysql - 从 MySQL 到 MariaDB 的 mysql 查询问题

转载 作者:可可西里 更新时间:2023-11-01 07:33:59 28 4
gpt4 key购买 nike

我目前正在使用旧的 mysql 函数从 PHP 5 移植一个网站,所以我基本上是从用新的 mysqli 函数替换所有 mysql 函数开始的,并立即解决了大部分问题。问题是,有一个 mysql 查询不再有效,我不明白为什么,它看起来像这样:

    SELECT *
FROM {
OJ `tableA`.`tableA`
LEFT OUTER JOIN `tableB`.`tableB` ON `tableA`.`idA` = `tableB`.`idA`
}
LEFT JOIN tableC ON tableC.idC = tableB.idC
LEFT JOIN tableD ON tableD.idD = tableC.idC
WHERE something in ('tableA','tableB')
ORDER BY column1, column2

错误提示:

"Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'LEFT JOIN tableC ON tableC .idC = tableB.idC' at line 6"

我想说这个网站不是我做的,我也不知道是谁做的,我只是负责把它移植到较新版本的 PHP 上。所以我不能确定这个查询是关于什么的,但我不认为我会遇到这样的问题。另外,我不熟悉这种 OJ{} 的写作方式,所以我不确定如果这是这里的问题我该如何替换它。

最佳答案

MariaDB 的 OP 修复是:

SELECT *
FROM tableA
LEFT OUTER JOIN tableB.tableB ON tableA.idA = tableB.idA
LEFT JOIN tableC ON tableC.idC = tableB.idC
LEFT JOIN tableD ON tableD.idD = tableC.idC
WHERE something in ('tableA','tableB')
ORDER BY column1, column2

Ok I fixed it by removing the curly braces and OJ and writting simply FROM tableA .... – Simon 13 mins ago

关于mysql - 从 MySQL 到 MariaDB 的 mysql 查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54916663/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com