>

문자열에서 가변 길이의 숫자를 가져와 합해야합니다.

문자열의 형식은 다음과 같습니다.

EH:NUMBER=SomeOtherStuff->Code

RIGHT() 를 통해 코드를 추출하고 있습니다  sum을 사용하여 날짜를 통해 그룹화하는 순간에 다른 테이블과 결합하여 그룹을 올바르게 설정하십시오.

SUM(CASE WHEN (MONTH(data.DATE1) = 5  AND YEAR(data.DATE1) = YEAR(GETDATE())) THEN 1 ELSE 0 END) N'Mai',

그런 다음 행 수가 아닌 문자열의 숫자를 합산해야합니다.

일부 예 :

Month1 EH:1=24->ZTM
Month1 EH:4=13-21->LKm
Month2 EH:3=34,33,43->LKm
Month2 EH:7=12,92-29,29->LKm
Month2 EH:5=24-26,11,21,22->ZOL

필요한 것 :

Material - Month1 - Month2
ZTM - 1 - 0
LKM - 4 - 10
ZOL - 0 - 5

제발 좀 도와 줄래요?

인사말


  • 답변 # 1

    짧은 버전 : 당신이 찾고있는 것은 SUBSTRING입니다.

    긴 버전 : NUMBER의 숫자 값의 합계를 얻으려면 어떻게 분해하는지 생각해야합니다.

    다음 단계를 따르는 것이 좋습니다.

    <올>

    문자열에서 NUMBER 개의 부분을 추출하십시오. 이것은 SUBSTRING으로 수행해야합니다 (RIGHT로 코드를 추출하는 것처럼). 하위 문자열의 시작과 길이를 얻으려면 charindex (또는 원하는 경우 patindex)를 사용하십시오.

    캐스트를 사용하여 NUMBER 부분을 숫자 값으로 변환 (또는 변환 또는 익숙한 항목)

    이제 집계를 할 수 있습니다.

    따라서 SUM (CAST (SUBSTRING (*이 부분은 스스로 알아 내야합니다))을올바른 수치 데이터 유형으로))). 직접 삽입 할 값을 알아 내고 먼저 구분 문자의 위치를 ​​찾은 다음 NUMBER 부분을 추출 한 다음 숫자 값을 얻는 것이 좋습니다.

    실제로하는 일을 더 잘 이해하기 위해

    배정과 함께 행운과 행운을 빕니다 마틴

관련 자료

  • 이전 (안드로이드)보기가 아래로 미끄러지고 몇 초 후에 자동으로 위로 올라갑니다
  • 다음 특정 클래스의 jQuery 선택기