programing

여러 열을 하나로 결합하고 사용자 지정 문자열로 형식을 지정하는 방법은 무엇입니까?

itmemos 2023. 9. 24. 12:22
반응형

여러 열을 하나로 결합하고 사용자 지정 문자열로 형식을 지정하는 방법은 무엇입니까?

SELECT id, <X> AS name FROM `table`

기본적으로<X>의 조합입니다.
성 + ', ' + 이름

예를 들면 다음과 같습니다.

   id | name        |
   2  | Smith, Bob  |
   3  | Jones, Susy |

이것은 단지 예시일 뿐입니다, 저는 그렇게 단순하게 이름을 조합하고 싶지는 않습니다.

그 기능은?

SELECT id, CONCAT(lastname, ', ', firstname) AS name FROM `table`;

많은 필드를 연결할 경우 함수도 고려할 수 있습니다. 첫 번째 인수는 연결할 문자열 사이에 추가되는 나머지 인수의 구분자입니다.

SELECT id, 
       CONCAT_WS(',', field_1, field_2, field_3, field_4) list
FROM   `table`;

다음과 같이 콘캣을 사용합니다.

SELECT id, CONCAT(lastname, ' , ', firstname) AS name FROM `table`;
SELECT 

CONCAT('https://example.com/estimation/create?pId=',task_p_id,'&estId=',task_est_id) as live_url,

CONCAT('http://stage.example.com/estimation/create?pId=',task_p_id,'&estId=',task_est_id) as stage_url 

FROM `ls_task` LEFT JOIN `ls_estimation` ON est_id=task_est_id LEFT JOIN `ls_project` ON p_id=task_p_id limit 10

GROUP_CONCAT():

표의 모든 열 이름을 쉼표로 구분하는 예:

SELECT GROUP_CONCAT(c.`COLUMN_NAME`) FROM information_schema.`COLUMNS` c
WHERE c.`TABLE_SCHEMA` = "DB_NAME" AND c.`TABLE_NAME`="TABLE_NAME"

출력:

column_name_1,column_name_2,column_name_3,column_name_4,...

언급URL : https://stackoverflow.com/questions/3757723/how-to-combine-multiple-columns-as-one-and-format-with-custom-strings

반응형