Я написал следующий sql-код в mysql:
SELECT replace(concat(concat(concat(concat(concat(concat(server_name,':'),server_id),':'),1),'='), flag), ',', '') result
FROM (SELECT f.name server_name,f.id server_id, group_concat(concat(concat(concat(concat(concat(concat(sgk.NAME,';') ,sgk.id),';'),1),';'),sgk.nagios_id ),'|') as flag
FROM complex_check cc,lnksinglechecktocomplexcheck lk,single_check sgk,functionalci f ,lnkconfigurationitemtosinglecheck lkcg
WHERE cc.id = lk.complex_check_id AND sgk.id = lk.single_check_id AND sgk.id = lkcg.single_check_id AND lkcg.config_item_id = f.id GROUP BY f.NAME) x
С помощью этого sql-кода я могу получить следующий результат:
result
INFRASEP01:32:1=cpu check01;1;1;2|DB check sep01;3;1;2|disk space check sep01;2;1;3|
INFRASEP02:33:1=cpu check sep02;4;1;2|db check sep02;5;1;23|disk space check sep02;6;1;2|
INFRAVICO04:35:1=cpu check04;7;1;2|db check CO04;8;1;2|disk space check CO04;9;1;2|
Я хочу вставить результат в таблицу «pfm_result_data» (которая имеет два атрибута: id - int (11) AUTO_INCREMENT NOT NULL и первичный ключ таблицы; result_list - текст NULL). Я написал следующий код для вставки данных в таблицу Таблица "pfm_result_data":
INSERT INTO pfm_result_data (result_list) VALUES (here is sql sentence which I wrote above)
Но я не мог вставить данные в таблицу «pfm_result_data». не могли бы вы помочь исправить мое вставное предложение, пожалуйста? ...
Большое спасибо !
С уважением,
Анвар
2 ответа
Используйте insert . . . select
:
insert into pfm_result_data(result_list)
<your query here>;
Вам не нужно ключевое слово VALUES
.
INSERT .. SELECT инструкция:
INSERT INTO pfm_result_data
(
your_field
)
SELECT replace(concat(concat(concat(concat(concat(concat(server_name,':'),server_id),':'),1),'='), flag), ',', '') AS result
FROM (SELECT f.name server_name,f.id server_id, group_concat(concat(concat(concat(concat(concat(concat(sgk.NAME,';') ,sgk.id),';'),1),';'),sgk.nagios_id ),'|') as flag
FROM complex_check cc,lnksinglechecktocomplexcheck lk,single_check sgk,functionalci f ,lnkconfigurationitemtosinglecheck lkcg
WHERE cc.id = lk.complex_check_id AND sgk.id = lk.single_check_id AND sgk.id = lkcg.single_check_id AND lkcg.config_item_id = f.id GROUP BY f.NAME) x
Похожие вопросы
Новые вопросы
mysql
MySQL — это бесплатная система управления реляционными базами данных (RDBMS) с открытым исходным кодом, которая использует язык структурированных запросов (SQL). НЕ ИСПОЛЬЗУЙТЕ этот тег для других БД, таких как SQL Server, SQLite и т. д. Это разные БД, которые используют свои собственные диалекты SQL для управления данными.