[SQL] 어떻게 쿼리에 매개 변수를 전달하는 방법?
SQL어떻게 쿼리에 매개 변수를 전달하는 방법?
난 내 응용 프로그램에 대한 쿼리를 작성하기 위해 노력하고있어,하지만 난 어떤 문제에 봉착했습니다. 내가 좋아하는 내 데이터베이스의 매개 변수를 하나의 필드로 전달해야합니다 :
SELECT name, phone, email
FROM company
WHERE $P{clause} = $P{key}
ORDER BY $P{order}
절 BY 절과 ORDER 사용자가 선택을위한 동적 WHERE 때문에.
$ P를 사용하여 {}가 작동하지 않았다.
해결법
-
==============================
1.이 구문은 JasperReports에 참조 매개 변수에 대한 표현이 있습니다! $ P {}와 $ P는 {}.
이 구문은 JasperReports에 참조 매개 변수에 대한 표현이 있습니다! $ P {}와 $ P는 {}.
샘플:
| Parameter name | Parameter type | Parameter value | |:---------------|-------------------|:---------------:| | eventName | java.lang.String | Olympic Games | | eventType | java.lang.Integer | 2 |
원래 표현 (대체 할) :
SELECT startDate, endDate, rating FROM events WHERE name=$P{eventName} AND type=$P{eventType}
그 결과는 다음과 같습니다
SELECT startDate, endDate, rating FROM events WHERE name='Olympic Games' AND type=2
샘플:
| Parameter name | Parameter type | Parameter value | |:---------------|------------------:|:---------------:| | tableName | java.lang.String | events | | eventName | java.lang.String | Olympic Games | | channel | java.lang.String | 'BBC' | | type | java.lang.String | sport |
원래 표현 (대체 할) :
SELECT startDate, endDate, rating FROM $P!{tableName} WHERE name='$P!{eventName}' AND channel=$P!{channel} AND type=$P!{type}
그 결과는 다음과 같습니다
SELECT startDate, endDate, rating FROM events WHERE name='Olympic Games' AND channel='BBC' AND type=sport
자세한 내용은이 쿼리 샘플에서이 사용 보고서 매개 변수 포스트와 모양을 읽을 수 있습니다.
귀하의 경우에는 올바른 표현은 다음과 같이 할 수있다 :
SELECT name, phone, email FROM company WHERE $P!{clause} = $P{key} ORDER BY $P!{order}
$ P {키} java.lang.String의 매개 변수입니다
또는 다음과 같이 (이 $ P에 따라 달라집니다! {절} 값)
SELECT name, phone, email FROM company WHERE $P!{clause} = $P!{key} ORDER BY $P!{order}
$ P {키} java.lang.String의 매개 변수입니다
-
==============================
2.당신이 매개 변수에 의해 주문해야하는 경우이 시도 :
당신이 매개 변수에 의해 주문해야하는 경우이 시도 :
SELECT name, phone, email ,(case when $P{order} = 'name' then name when $P{order} = 'phone' then phone else email end) as orderlist FROM company WHERE $P{clause} = $P{key} ORDER BY orderlist
from https://stackoverflow.com/questions/11871042/how-to-pass-parameters-to-query by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] SQL / MySQL은 - 별개의 / UNIQUE를 선택하지만, 모든 열을 반환? (0) | 2020.03.14 |
---|---|
[SQL] SQL Server 테이블에서 n은 임의의 행을 선택 (0) | 2020.03.14 |
[SQL] GROUP BY와 DISTINCT 사이에 어떤 차이가 있나요 (0) | 2020.03.14 |
[SQL] 테이블의 기본 키에 대한 가장 좋은 방법은 무엇입니까? (0) | 2020.03.14 |
[SQL] 어떻게이 게임 통계 쿼리를 단순화 할 수 있습니까? (0) | 2020.03.14 |