복붙노트

[SQL] SQL은 어떻게 선택 반환 값을 바꾸려면?

SQL

SQL은 어떻게 선택 반환 값을 바꾸려면?

내 데이터베이스 (MySQL의) 테이블에서 각각 true와 false 대표 1과 0을 가진 열이 있습니다.

그러나 SELECT에, 나는 그것이의 GridView에서 인쇄 참 또는 거짓을 위해 교체해야합니다.

내가 할에 내 SELECT 쿼리는 다음을 어떻게 할까?

내 현재의 표에서 :

 id   |  name    |  hide
  1   |  Paul    |  1
  2   |  John    |  0
  3   |  Jessica |  1

나는 그것이하여 보여줄 필요가있다 :

  id  |  name    |  hide
  1   |  Paul    |  true
  2   |  John    |  false
  3   |  Jessica |  true

해결법

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

    1.당신은 선택할 수 있습니다 :

    당신은 선택할 수 있습니다 :

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

    2.당신이 뭔가를 할 수 있습니다 :

    당신이 뭔가를 할 수 있습니다 :

    SELECT id,name, REPLACE(REPLACE(hide,0,"false"),1,"true") AS hide FROM your-table
    

    이 당신을 도울 수 있기를 바랍니다.

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

    3.나는 해결책을 가지고

    나는 해결책을 가지고

       SELECT 
       CASE status
          WHEN 'VS' THEN 'validated by subsidiary'
          WHEN 'NA' THEN 'not acceptable'
          WHEN 'D'  THEN 'delisted'
          ELSE 'validated'
       END AS STATUS
       FROM SUPP_STATUS
    

    이 케이스를 사용하고 있습니다 이것은 또 다른 더 두 개의 옵션을 선택한 값을 조작하는 것입니다.

  4. ==============================

    4.당신이 문자열 값으로 열을 원하는 경우 :

    당신이 문자열 값으로 열을 원하는 경우 :

    SELECT id, name, CASE WHEN hide = 0 THEN 'false' ELSE 'true' END AS hide
      FROM anonymous_table
    

    DBMS에 부울을 지원하는 경우, 대신 사용할 수 있습니다 :

    SELECT id, name, CASE WHEN hide = 0 THEN false ELSE true END AS hide
      FROM anonymous_table
    

    즉, 이름의 거짓과 진실의 주위에 따옴표가 제거 된 것을 제외하고 동일합니다.

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

    5.당신은 같은 SELECT 절에 캐스팅을 사용할 수 있습니다 :

    당신은 같은 SELECT 절에 캐스팅을 사용할 수 있습니다 :

    SELECT id, name, CAST(hide AS BOOLEAN) FROM table_name;
    
  6. ==============================

    6.나는 case 문이 잘못 말하는하지만 대신 좋은 해결책이 될 수 있습니다. 당신이 CASE 문을 사용하도록 선택하는 경우, 당신은 확인 CASE 조건 중 적어도 하나가 일치하는지 확인해야합니다. 그렇지 않으면 오류를 잡는 오류 처리기를 정의해야합니다. 당신이 IF 문을 사용하여이 작업을 수행 할 필요가 없습니다 리콜.

    나는 case 문이 잘못 말하는하지만 대신 좋은 해결책이 될 수 있습니다. 당신이 CASE 문을 사용하도록 선택하는 경우, 당신은 확인 CASE 조건 중 적어도 하나가 일치하는지 확인해야합니다. 그렇지 않으면 오류를 잡는 오류 처리기를 정의해야합니다. 당신이 IF 문을 사용하여이 작업을 수행 할 필요가 없습니다 리콜.

    SELECT if(hide = 0,FALSE,TRUE) col FROM tbl; #for BOOLEAN Value return
    

    또는

    SELECT if(hide = 0,'FALSE','TRUE') col FROM tbl; #for string Value return
    
  7. ==============================

    7.select 문 자체의 값을 대체 ...

    select 문 자체의 값을 대체 ...

    (모바일 LIKE '966 %의'THEN ((교체를 선택 CASE CAST (모바일 AS의 NVARCHAR (MAX)), '966', '0')) ELSE 모바일 END)

  8. from https://stackoverflow.com/questions/16753122/sql-how-to-replace-values-of-select-return by cc-by-sa and MIT license