이 문제를 표현하는 방법을 모르겠다. 이미 해결 된 경우 사과드립니다.가능성 표를 논리 문으로 변환하는 접근 방식
두 개의 입력이 주어진 출력 테이블로 요약 된 비즈니스 규칙이 있습니다. 하나의 축에 5 개의 가능한 값 각각과 다른 축에 5 개의 값 각각에 대해 단일 출력이 있습니다. 이 25 개의 셀에는 10 가지 다른 가능성이 있으므로 각 입력 쌍마다 고유 한 출력이있는 것은 아닙니다.
중첩 된 CASE 문과 함께 TSQL에서 이러한 규칙을 인코딩했지만 디버깅 및 수정하기가 어렵습니다. C#에서는 배열 리터럴을 사용할 수 있습니다. 논리적 인 규칙을 행렬로 변환하는 것과 관련된 논리적 인 주제가 있는지 궁금합니다. 자세한 SQL에서,
if B OR (A and X) then 1 else 0
을 ... 나 : 그래서 같은 규칙에 ...
A B C -- -- -- -- X 1 1 0 Y 0 1 0
: 예를 들어
, 하나는이 사소한 매트릭스를 번역 할 수CASE WHEN FieldABC = 'B' THEN 1
WHEN FieldABX = 'A' AND FieldXY = 'X' THEN 1
ELSE 0
더 큰 행렬, 특히 SQL에서 사용할 수있는 좋은 접근법을 찾고 있습니다 (MS SQL 2K8, 중요하다면). 어떤 제안? 이 번역 유형을 검색해야하는 용어가 있습니까?
나는 아직도 당신이 무엇을 요구에 100 % 분명 해요,하지만 당신이 생각이 (http://en.wikipedia.org/wiki/SQL_CLR) – wtjones
@wtjones을 [CLR을?] : 그 절대적이다 옵션이 될 수 있습니다. 가능한 경우 관리상의 오버 헤드를 피하고 싶습니다. 내가이 질문에서 찾고있는 것은 좀 더 추상적이다. * 접근법은 무엇인가? * 나는 테이블 논리를 AND와 OR (또는 &&와?)로 변환하는 데 사용할 수있다. 우선, 이런 종류의 변형에 대한 이름이 있습니까? –
나는 Karnaugh지도에서 http://stackoverflow.com/questions/4763721/logic-is-a-b-c-b-c-the-same-as-a-b-c의 방법으로 읽고 있었다. 올바른 방향 일 것 같습니다. 의견? –