MYSQL - вставка двух значений, где условие другой таблицы не работает - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь два вставить два значения (одно из выбора из другой таблицы с условием) в таблицу ... но ниже возвращает мне ошибку:

SQL:

INSERT INTO animate_2 (number_records, type) 
     VALUES ((SELECT secty_cd, COUNT(*) 
              FROM securities 
              WHERE secty_cd = 'EQS'
             ), 'eqs'
            );

ОШИБКА 1241 (21000): операнд должен содержать 1 столбец (-ы)

Хотя подзапрос работает:

mysql> SELECT secty_cd, COUNT(*) FROM securities WHERE secty_cd = 'EQS';
+----------+----------+
| secty_cd | COUNT(*) |
+----------+----------+
| EQS      |    37316 |
+----------+----------+
1 row in set (0.00 sec)

Чего мне не хватает?

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Изменить INSERT INTO animate_2 (number_records, type) VALUES ((SELECT secty_cd, COUNT(*) FROM securities WHERE secty_cd = 'EQS'), 'eqs');

На

INSERT INTO animate_2 (number_records, type) VALUES ((SELECT COUNT(*) FROM securities WHERE secty_cd = 'EQS'), 'eqs');

0 голосов
/ 30 мая 2018

Здесь вам не нужны значения, вы можете просто написать свой запрос следующим образом.

INSERT INTO animate_2 (number_records,type) 
SELECT Count(*) , 'eqs'
FROM   securities 
WHERE  secty_cd = 'EQS'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...