복붙노트

[SQL] SELECT 문에서 두 열을 결합 SQL은

SQL

SELECT 문에서 두 열을 결합 SQL은

내 데이터베이스에 주소 1 및 주소 2 인 열이있는 경우, 내가 그렇게 그 열을 결합 어떻게 난 단지 내 select 문에에 대한 작업을 수행 할 수 있다는 것을, 나는 여전히 데이터베이스에 분리 떠날 것이다. 나는이 작업을 수행 할 수 있도록하고 싶습니다

WHERE completeaddress LIKE '%searchstring%'

어디 completedaddress는 주소 1 및 주소 2의 조합이다. 검색 문장은 검색 데이터처럼 될 것이다. 그들이 주소 2에 주소 1에 '123 센터 세인트'과 '아파트 3B'를했다 그래서, 만약 내가 어떻게가 검색 문장은 '센터 세인트 3B'인 경우 SQL과이 가능 그것을 선택할 것?

해결법

  1. ==============================

    1.나는 이것이 당신이 찾고있는 무엇을 생각 -

    나는 이것이 당신이 찾고있는 무엇을 생각 -

    select Address1+Address2 as CompleteAddress from YourTable
    where Address1+Address2 like '%YourSearchString%'
    

    우리가 주소 2와 주소 1을 추가 할 때 생성되는 화합물 단어를 방지하기 위해, 당신은이를 사용할 수 있습니다 -

    select Address1 + ' ' + Address2 as CompleteAddress from YourTable 
    where Address1 + ' ' + Address2 like '%YourSearchString%'
    

    그래서, '123 센터 세인트'와 '아파트 (b)는'123 센터 세인트 아파트 3B '만 될 것'(123) 센터 세인트 아파트 3B '되지 않습니다.

  2. ==============================

    2.MySQL의에서 당신은 사용할 수 있습니다 :

    MySQL의에서 당신은 사용할 수 있습니다 :

    SELECT CONCAT(Address1, " ", Address2)
    WHERE SOUNDEX(CONCAT(Address1, " ", Address2)) = SOUNDEX("Center St 3B")
    

    SOUNDEX 함수는 대부분의 데이터베이스 시스템에서 유사하게 작동, 나는 분에서 MSSQL에 대한 구문 생각할 수 없다,하지만 너무 멀리 위에서 없을 것이다.

  3. ==============================

    3.귀하의 주소 1 = '123 센터 세인트'및 주소 2 = '아파트 3B'경우에 당신이 결합하고 LIKE를 할 경우에도, 당신은 '센터 세인트 3B'로 검색 문장을 검색 할 수 없습니다. 당신의 검색 문장이었다 경우, '센터 세인트 아파트', 당신은 사용하여 작업을 수행 할 수 있습니다 -

    귀하의 주소 1 = '123 센터 세인트'및 주소 2 = '아파트 3B'경우에 당신이 결합하고 LIKE를 할 경우에도, 당신은 '센터 세인트 3B'로 검색 문장을 검색 할 수 없습니다. 당신의 검색 문장이었다 경우, '센터 세인트 아파트', 당신은 사용하여 작업을 수행 할 수 있습니다 -

    WHERE (address1 + ' ' + address2) LIKE '%searchstring%'
    
  4. ==============================

    4.

    SELECT StaffId,(Title+''+FirstName+''+LastName) AS FullName 
    FROM StaffInformation
    

    어디는 괄호 안에 이것은 하나의 열에 표시됩니다 쓸 않습니다. 어디 아래의 제목 및 이름 쓰기 구문의 중앙에 점을 원하는가,

    SELECT StaffId,(Title+'.'+FirstName+''+LastName) AS FullName 
    FROM StaffInformation
    

    MS SQL 서버 2008 R2 Express Edition을 사용하여 이러한 구문 작동합니다.

  5. ==============================

    5.당신이 당신의 데이터베이스 스키마를 변경하지 않으려면 (내가하지 않을이 간단한 쿼리) 당신은이 같은 필터를 결합 할 수 있습니다 : WHERE (주소 1 + 1 주소) LIKE '% 검색 문장 %'

    당신이 당신의 데이터베이스 스키마를 변경하지 않으려면 (내가하지 않을이 간단한 쿼리) 당신은이 같은 필터를 결합 할 수 있습니다 : WHERE (주소 1 + 1 주소) LIKE '% 검색 문장 %'

  6. from https://stackoverflow.com/questions/5247381/sql-combine-two-columns-in-select-statement by cc-by-sa and MIT license