我想要的是当我按下每个名字的首字母时,就会显示出带有首字母的名字

问题描述 投票:0回答:1

我制作了一个简单的姓名数据库。有几个名字:(例如)Alexander、Anthony、Amelia、Asher 和 Matin。我想获取包含字母“a”的所有名称,但仅获取第一个字母“a”而不是 Matin 的名称,因为 a 是单词中的第二个字母。我的存储库中有此方法:

@Query(value = "select ID, F_NAME, L_NAME FROM TEACHERS WHERE F_NAME LIKE  %:firstName% ",nativeQuery = true )
List<Teacher>findByFirstname( @Param("firstName") String firstName);

我用 spring 创建了一个包含教授列表的应用程序,当我单击姓名的第一个字母时,列表显示包含该字母的所有姓名,

我想要的是当我按下每个名字的首字母时,就会显示出名字及其首字母

java spring spring-boot
1个回答
0
投票

我认为在你的情况下你应该删除第一个%并使你的代码像这样:

@Query(value = "SELECT ID, F_NAME, L_NAME FROM TEACHERS WHERE F_NAME LIKE :firstName%", nativeQuery = true)
List<Teacher> findByFirstname(@Param("firstName") String firstName);

然后,您可以调用该方法并将要搜索的字母作为参数传入,如下所示:

List<Teacher> teachers = findByFirstname("a");

这将返回名字以字母“a”开头的所有教师的列表。

© www.soinside.com 2019 - 2024. All rights reserved.