반응형
문자열을 연결하여 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
반응형
'source' 카테고리의 다른 글
워드프레스의 궁극 멤버 플러그인으로 사용자 지정 탭 만들기 (0) | 2023.10.11 |
---|---|
jquery에서 배열을 만들려면 어떻게 해야 합니까? (0) | 2023.10.11 |
SQL 구문에 오류가 있습니다. MySQL 서버 버전에 해당하는 설명서에서 다음에 사용할 올바른 구문을 확인하십시오. (0) | 2023.10.11 |
mysqli::mysqli(): (HY000/2002):소켓 'MySQL'을 통해 로컬 MySQL 서버에 연결할 수 없음 (2) (0) | 2023.10.11 |
두 열 A,B를 기준으로 데이터 프레임에서 중복 제거, 다른 열 C에 최대값이 있는 행 유지 (0) | 2023.10.11 |