2014-04-14 4 views
0

한 열의 내용을 기반으로 데이터를 검색하려고합니다. QR1에서Access SQL 조건부 쿼리

열 데이터가 문자로 시작하면 샘플 테이블

Description EID  Basecode   
    ----------- ----  ---------  
    ssdad   1001  S2378797  
    gfd   1002  S1164478  
    gfdsffsdf  1003  R1165778  
    ssdad   1004  M0007867  
    gfd   1005  N7765111  
    gfdsffsdf  1006  W5464111  
    gfd   1005  N7765111  
    gfdsffsdf  1006  A4000011 
    gfdsffsdf  1006  W5464111  
    ssdad   1001  2378797  
    gfd   1002  1164478 
    ssdad   1001  965000 
    gfd   1002  780000 
    yjgk   4456  540000 
    kjhkh   2009  150000 
    ddd   1004  1040 
    d88jg   1004  14C676 
    fsa   6565  158 
    fdh   1004  2Khlm 
    ggdg   2009  967 

그때 내가 원하는

결과; 숫자가 , , 및 길이가 6 이상인 숫자가 포함되어 있으면 qry2 결과를 얻습니다.

qry1, qry2에서 정렬되지 않은 데이터를 검색하는 방법은 무엇입니까?

어떻게하면 MS-Access에서 조건부로 실행할 수 있습니까?

답변

0

당신은 기본적으로 다음과 같이 IIF 문을해야 할 것 ...

ColValue: IIf((Len([col1])>6 And (Left([col1],2)="12" Or Left([col1],2)="13")),1,0) 

ColValue: IIf(Left([col1],1) In ("a","b","c"),1,0) 

이 : 그럼

그들이 당신의 기준을 충족하는 경우 (주 Z까지 모든 방법을 추가), 그것은이다 1이면 0입니다.

0

두 조건 중 하나라도 만족하지 못하면 어떻게됩니까? NULL을 반환 하겠지만 원하는대로 변경하십시오.

SELECT IIF((LEN([col1])>6 AND (LEFT([col1], 2) = "12" OR LEFT([col1], 2)="13")), qry2, 
     IIF(ASC(UCASE(LEFT([col1], 1))) BETWEEN 65 AND 90, qry1, NULL)) 
FROM myTable