질문:
IN 절을 사용하여 SQL 쿼리를 효율적으로 구성하는 방법 IN 절의 값 목록이 비즈니스에서 동적으로 파생되는 경우 Dapper ORM 사용 logic?
답변:
Dapper ORM은 이 시나리오를 직접 지원합니다. 방법은 다음과 같습니다.
string sql = "SELECT * FROM SomeTable WHERE id IN @ids"; var results = conn.Query(sql, new { ids = new[] { 1, 2, 3, 4, 5 }});
이 예에서 ids 매개변수는 정수 배열로 정의됩니다. 원래 쿼리에서 쉼표로 구분된 ID 목록은 비즈니스 로직을 기반으로 동적으로 구성되어 ids 매개변수의 값으로 전달됩니다.
Postgres를 데이터베이스로 사용하는 경우 올바르게 사용하려면 약간의 수정이 필요합니다. IN 절 내에서 배열을 처리합니다:
// Define a custom type to represent an array of integers var postgresIntArray = new PostgresIntArray { Value = new[] { 1, 2, 3, 4, 5 } }; string sql = "SELECT * FROM SomeTable WHERE id IN @ids"; var results = conn.Query(sql, new { ids = postgresIntArray});
위 내용은 동적으로 생성된 목록과 함께 Dapper ORM의 IN 절을 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!