繁体   English   中英

如何在 Spring 引导时避免此错误:(查询未返回唯一结果:4)

[英]How to avoid this error on Spring Boot: (query did not return a unique result: 4)

我试图从 MySql 数据库中获取一些随机数据,为了获取这些数据,我使用以下查询@Query(nativeQuery = true,value = "select question from test_questions order by RAND() limit 4")并且我将该查询放入 Jpa Repository 接口,我将此自定义方法public String getRandItems(); 但是当我尝试从 postman 获取数据时,它给我这个错误查询没有返回唯一结果:4

请注意,当我使用select *而不是select question时,它对我有用,但我不想要整个数据,我只想要question column

您将结果限制为 4 行,因此您应该返回一个字符串列表而不是一个简单的字符串作为结果:

public List<String> getRandItems();

您将结果限制为 4 行,因此您应该返回一个字符串列表而不是一个简单的字符串作为结果:

public List<String> getRandItems();

或者您可以将结果限制为 1 以仅获得一个字符串:

@Query(nativeQuery = true,value = "select question from test_questions order by RAND() limit 1")

查看它说它没有返回唯一结果的错误,因为它返回了更多与方法返回类型不匹配的结果。

是的,因为它返回多个结果,所以它可以将它存储在一个字符串中,您可以从public String getRandItems()更改方法签名;

To: public List<String> getRandItems() ;

所以它接受所有结果

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM