2 maneiras: -
1ª consulta personalizada
@Modifying
@Query("delete from User where firstName = :firstName")
void deleteUsersByFirstName(@Param("firstName") String firstName);
2ª consulta JPA por método
List<User> deleteByLastname(String lastname);
Quando você vai com consulta por método (2ª via), ele primeiro fará uma chamada get
select * from user where last_name = :firstName
Então ele irá carregá-lo em uma lista Então irá chamar delete id um por um
delete from user where id = 18
delete from user where id = 19
Primeiro busque a lista de objetos e, em seguida, o loop para excluir o id um por um
Mas, a 1ª opção (consulta personalizada),
É apenas uma única consulta que excluirá onde quer que o valor exista.
Acesse também este link https://www.baeldung.com/spring-data-jpa-deleteby