나는 질문들 사이의 관계와 함께 동적으로 설문지를 작성 중이다.SQL Server 쿼리에서 필드 값을 조건으로 사용하는 방법은 무엇입니까?
다른 질문의 대답에 따라 하나의 질문을 표시하거나 숨길 수 있다는 의미입니다.
질문 용으로 2 개, 관계 배송용으로 2 개의 테이블을 만들었습니다.
지금의 관계 테이블에이 같은 값을 가질 :
ParentQuesId ChildQuesId Operand Answer
35 45 = yes
35 46 = no
37 52 >= 10
질문 (35)는 2 개 옵션도하고 그렇습니다 있습니다. 이제 사용자가 예를 선택하면 질문 45가 표시되고 46은 숨겨 져야하고 사용자가 아니오를 선택하면 질문 46이 표시되고 45가 숨겨 져야합니다.
사용자가 질문 10보다 크거나 같음을 선택하면 37 번 질문과 동일하게 표시되어야합니다.
이제는 ParentQuesId와 사용자의 대답을 기반으로 SQL 쿼리를 만들고 있습니다.
그러나 어떻게 피연산자, 대답 및 사용자 대답 값을 기반으로 조건을 만들 수 있는지 모르겠습니다. 내가 지금까지 시도 것을
은 다음과 같습니다 :
declare @sql nvarchar(255)
declare @parent int = 35
declare @userans nvarchar(100) = 'yes'
set @sql = 'select * from QuesRelations where ParentQuesId = '+ cast(@parent as nvarchar(50)) +' and '''+ cast(@userans as nvarchar(50)) +''' = Answer';
exec(@sql)
하지만 난이 두번째 조건 [예 @userans + 피연산자 + 대답] 피연산자 필드 값을 기반으로 동적을해야
누구든지이 일을 도와 주시겠습니까?
감사 고든하지만, 피연산자가 고정되어 있지 않습니다. 피연산자를 사용하고 조건으로 대답해야합니다. – Mausami
@Mausami. . . 모든 가능한 피연산자를 포함하도록'where'를 확장하십시오. –
고든 고맙습니다. 그것은 나에게 도움이 될 것입니다. 고마워. .. – Mausami