source

문자열을 연결하여 SELECT * MySql

nicesource 2023. 10. 11. 20:47
반응형

문자열을 연결하여 SELECT * MySql

다음 쿼리는 MySQL에서 잘 작동합니다.

SELECT concat(title,'/') FROM `socials` WHERE 1

선택한 제목 필드에 연결합니다.

그러나 다음을 수행하려고 하면 다음과 같습니다.

SELECT concat(*,'/') FROM `socials` WHERE 1

다음 오류를 반환합니다.

 #1064 - You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near '*,'/') FROM `socials` WHERE 1 LIMIT 0, 30' at line 1

그렇다면 MySql과 함께 작동하기 위해 그러한 sql 쿼리를 만들 수 있는 방법이 있습니까?

SQL에서는 그렇게 할 수 없습니다.필드를 명시적으로 나열하고 각 필드를 연결해야 합니다.

SELECT CONCAT(field1, '/'), CONCAT(field2, '/'), ... FROM `socials` WHERE 1

앱을 사용하는 경우 SQL을 사용하여 열 이름을 읽은 다음 앱을 사용하여 위와 같은 쿼리를 구성할 수 있습니다.열 이름을 찾으려면 이 스택 오버플로 질문을 참조하십시오.mysql에서 테이블 열 이름을 가져오시겠습니까?

/를 구분자로 사용하여 필드를 연결하려면 다음을 사용할 수 있습니다.concat_ws:

select concat_ws('/', col1, col2, col3) from mytable

쿼리에 열이 나열되는 것을 피할 수는 없습니다.*- 구문은 "select * from"에서만 작동합니다.열을 나열하고 쿼리를 동적으로 구성할 수도 있습니다.

여러 필드를 문자열로 연결할 수 없습니다.모두 필드를 선택해야 합니다(*).

여러 필드에서 이 작업을 수행할 수 없습니다.이것도 찾아보실 수 있습니다.

언급URL : https://stackoverflow.com/questions/13551041/concat-a-string-to-select-mysql

반응형