Java 有没有办法在SpringBoot中使用实际的SQL查询(使用MySql中的Performance_模式)?
我在春季和春季是新手。 我来这里是因为我找不到一种方法来使用Spring在查询本地MysqlDB时使用性能模式 我尝试使用@Query anotion,但发现它使用的是JPQL 我的问题Java 有没有办法在SpringBoot中使用实际的SQL查询(使用MySql中的Performance_模式)?,java,mysql,spring,spring-boot,spring-data-jpa,Java,Mysql,Spring,Spring Boot,Spring Data Jpa,我在春季和春季是新手。 我来这里是因为我找不到一种方法来使用Spring在查询本地MysqlDB时使用性能模式 我尝试使用@Query anotion,但发现它使用的是JPQL 我的问题 SELECT EVENT_ID, TRUNCATE(TIMER_WAIT / 1000000000000, 6) AS Duration, SQL_TEXT FROM performance_schema.events_statements_history_long WHERE (TR
SELECT EVENT_ID, TRUNCATE(TIMER_WAIT / 1000000000000, 6) AS Duration, SQL_TEXT
FROM performance_schema.events_statements_history_long
WHERE (TRUNCATE(TIMER_WAIT / 1000000000000, 6)) > 0.002;
(请忽略这个糟糕的查询,我只想表明我想要使用性能\架构表)
我看到的是,我应该使用JPQL进行查询,但如果性能模式是“隐藏”的,我看不出我如何做到这一点
我试图在数据库中获取有关查询的信息,通常进行监视。这就是我使用性能模式的原因
我很想知道如何传递这个查询,或者是否有其他方法从我的数据库获取此类信息(不仅仅是这个查询,这是我将要做的一个示例)
另外,为什么关于性能模式的信息如此之少。这不好吗?还有别的工具我找不到吗
谢谢大家这里没有关于查询的信息 数据库本身使用此结构来优化查询(通常)
- MySQL的旧版本没有
。你用的是什么版本性能模式
??也许你的意思是TRUNCATE()
或FLOOR()
ROUND()
- 另见
EXPLAIN SELECT ... EXPLAIN FORMAT=JSON SELECT ... the slowlog -- turn on and have `long_query_time = 1`.