자유게시판

문자열 데이터를 숫자형으로 가져와서 최소값/최대값 비교를 하기 위해 CAST를 써봤는데, 이게 xml 쿼리에서 먹더라구요.

방법이 막막해서 질문글 올리려는 중에ㅋ 완전 우연히 얻어걸린 거여서 신기해하고 있습니다.

 

이렇게 하는 게 바람직한지 모르겠는데, 전문가분들께 검증도 받을 겸 혹시나 도움이 될까 해서 기록 차원에서 남겨봅니다.

 

<query id="getMaxAndMinValueWithinExtraVars" action="select">
    <tables>
        <table name="documents" />
        <table name="document_extra_vars" alias="extra_vars" />
    </tables>
    <columns>
        <column name="MAX(CAST(extra_vars.value as signed))" alias="max" />
        <column name="MIN(CAST(extra_vars.value as signed))" alias="min" />
    </columns>
    <conditions>
        <condition operation="in" column="documents.module_srl" var="module_srl" filter="number" />
        <condition operation="in" column="documents.category_srl" var="category_srl" filter="number" pipe="and" />
        <condition operation="in" column="documents.member_srl" var="member_srl" filter="number" pipe="and" />
        <condition operation="in" column="documents.status" var="statusList" pipe="and" />
        <condition operation="equal" column="extra_vars.module_srl" default="documents.module_srl" pipe="and" />
        <condition operation="equal" column="extra_vars.document_srl" default="documents.document_srl" pipe="and" />
        <condition operation="equal" column="extra_vars.eid" var="var_eid" notnull="notnull" pipe="and" />
    </conditions>
</query>

 

윤삼 Lv. 19
아무래도 중급 초반 수준의 코딩 오타쿠인 것 같습니다.

댓글 6