2012-07-06 2 views
0

두 단계로 비행 표에 두 개의 표를 합류하고 싶습니다. 'BUD1234'일치 'BUD123' 가장 긴 항공사 코드 접두사와 일치

  • 항공사 코드의 일치처럼 - -

    • 전체 항공편 번호가 일치 'BUD123'일치 '버드'와 같은,하지만 'BU'와 'BU123'일치하지 않는 'BUD'

    제 아이디어는 첫 번째 숫자 문자의 위치를 ​​찾고 알파벳 접두사와 일치시키는 것이지만 너무 느릴 수 있습니다. 여기에 더 좋은 해결책이 있습니까?

  • +5

    에 일치시킬 수 있습니다 단지 항공사 코드를 캡처합니다 '? – teran

    답변

    1

    긍정적 인 선견문을 사용할 수 있습니다. 뭔가 같이 :

    ([a-zA-Z]+)(?=\d+) 
    

    두 개의 필드`AirlineCode의 varchar`와`번호 VARCHAR로`FlightNumbers`을 분할하는 것이 더 효율적입니다 수 있습니다 당신은 다음