我有一个查询,它可以在MySQL8.0上运行,但不能在下面的版本上运行,比如MySQL5.5。当我在web服务器上遇到这个错误时,如何使其兼容:#1064-您的SQL语法中有一个错误;查看与您的MySQL服务器版本相对应的手册,以了解第11行“(partition by pid order by Age”附近使用的正确语法
SELECT p.id, p.pid, p.name,
MAX(CASE WHEN t.dr = 1 THEN t.name END) as name1,
MAX(CASE WHEN t.dr = 1 THEN age END) as age1,
MAX(CASE WHEN t.dr = 2 THEN t.name END) as name2,
MAX(CASE WHEN t.dr = 2 THEN t.age END) as age2,
MAX(CASE WHEN t.dr = 3 THEN t.name END) as name3,
MAX(CASE WHEN t.dr = 3 THEN t.age END) as age3,
MAX(CASE WHEN t.dr = 4 THEN t.name END) as name4,
MAX(CASE WHEN t.dr = 4 THEN t.age END) as age4
FROM Table1 p
join (select id , pid, name, age, DENSE_RANK() OVER (partition by pid order by age) as dr
from Table2) t on p.pid= t.pid
group by p.id, p.pid, p.name
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=D324E7654218DAE3D1168DF2BF529099
select version();
一种方法是替换dense_rank()
的相关子查询:
FROM Table1 p JOIN
(SELECT t2.*,
(SELECT COUNT(DISTINCT tt2.age)
FROM table2 tt2
WHERE tt2.pid = t2.pid AND
tt2.age <= t2.age
) as dr
FROM Table2 t2
) t
ON p.pid = t.pid
这是一个dB<>小提琴。
本文向大家介绍服务上线怎么兼容旧版本?相关面试题,主要包含被问及服务上线怎么兼容旧版本?时的应答技巧和注意事项,需要的朋友参考一下 可以用版本号(version)过渡,多个不同版本的服务注册到注册中心,版本号不同的服务相互间不引用。这个和服务分组的概念有一点类似。
我用AnyLogic8.7.6创建了一个模型,但我需要在更旧的(专业)版本7.0.2上继续它。我需要旧版本阅读,更重要的是,允许我修改它。谢谢
我正在使用MySQL5.5版本编写SQL查询来进行排序。我的问题是无法正确使用SQL查询下面的列排序。 这是我的数据库链接,显示我的排序错误https://dbfiddle.uk/?rdbms=mysql_5.5&fiddle=bcb32a6b47d0d5b061fd401d0888bdc3 实际上,我想对列模式进行排序,如下所示: 我的错误排序在MySQL5.5的结果,它不能正确排序在表。 错误
问题内容: 除了使用以外,如何检查MySQL查询是否成功 我正在努力实现… 问题答案: 这是手册页中的第一个示例: 如果您想使用其他以外的东西,我建议。
问题内容: 我尝试使用的库具有给定的纬度和经度,并且对表中的条目进行计算后得出的纬度/经度在此范围内。生成的SQL查询适用于MySQL,但不适用于PostgreSQL。 这是我的文件中详细说明错误和完整查询的条目: 知道了什么是SQL之后,我可以编辑生成SQL的PHP代码,并将PR发送回库。 问题答案: 该查询使用特定于MySql的语法。在Postgres(以及我所知的所有其他RDBMS)中,
我正在编写一个教会应用程序,其中我正在使用本教程使用可滑动的选项卡 但我希望我的应用程序支持Froyo及以上! AndroidManifest.xml