2014-12-02 2 views
0

테이블에서 'longblob'유형의 필드를 제외하려면 다음을 수행했습니다.열을 변수로 언급하려면 Sql을 선택하십시오.

    INFORMATION_SCHEMA.COLUMNS FROM @column에
  1. SELECT GROUP_CONCAT (COLUMN_NAME)의 WHERE TABLE_NAME = '문서'AND DATA_TYPE NOT IN ('LONGBLOB');
  2. @column from document를 선택하십시오.

필드의 값을 표시하는 대신 @column 값을 반환합니다.

예 :@column = "id, name" 인 경우 "id, name" 만 반환합니다. id &의 값을 각각 표시하는 것이 아닙니다.

답변

1

이 시도 :

SELECT group_concat(COLUMN_NAME) into @column 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = 'document' AND DATA_TYPE NOT IN ('longblob'); 

set @stmt := concat('select ', @column , ' from document'); 

select @stmt; 

PREPARE stmt FROM @stmt; 

EXECUTE stmt ; 
관련 문제