๐Ÿ“˜ Web/Spring, JPA

[JPA] JPA์—์„œ MySql์˜ Order by Field ์‚ฌ์šฉ๋ฒ• (์ •๋ ฌ ์ˆœ์„œ ์ˆ˜๋™์œผ๋กœ ์ง€์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•)

a n u e 2023. 5. 31. 14:17

 

 

1. Entity์—์„œ sorting์šฉ ํ•„๋“œ ์ถ”๊ฐ€ ํ›„, @Formula ์–ด๋…ธํ…Œ์ด์…˜ ์ด์šฉ

@Getter
@Setter
@Entity
@Table(name="TABLE")
public class Entity {

	...
    
	@Formula("FIELD(STATUS_NAME, '์ง€์—ฐ', '๊ณ„ํš', '์™„๋ฃŒ')")
    private String sortingStatus;
}

 

 

2. find ์‹œ, ์ •๋ ฌ ๊ฐ’ ์…‹ํŒ…

List<Entity> productInfo = testRepo.findAll(Sort.by(Sort.Direction.ASC, "sortingStatus"));