我有以下SQL语句:
SELECT Office,
COUNT(Office) As Tot_Part,
(SELECT Office, COUNT(Office)
FROM trespondent
WHERE completion_status= 'Started'
OR completion_status = 'Complete'
GROUP BY Office ORDER BY Office
) As Total_Resp
FROM trespondent
WHERE completion_status <> 'New'
GROUP BY Office
ORDER BY Office
Run Code Online (Sandbox Code Playgroud)
我所遇到的问题是SELECT
括号中的陈述 - 我要做的是将total
整体人员和total
已经开始或已完成的人员带回来.
1241 - 操作数应包含1列
如果我包含 COUNT(Office)
,则两列不匹配.
如何改进查询以实现我正在寻找的结果集?
Office Tot Resp
London 20 2
Leeds 30 17
Run Code Online (Sandbox Code Playgroud) 我有这个 MySQL 插入查询,它给了我一个Error Code: 1241. Operand should contain 1 column(s)
.
INSERT INTO esjp_content
( esjp_content.primary_key, esjp_content.template_id, esjp_content.section_ref,
esjp_content.position, esjp_content.indent, esjp_content.content,
esjp_content.summary_id, esjp_content.role_ref, esjp_content.author_id,
esjp_content.event_id, esjp_content.sys_time )
VALUES
( ( 3, 1, 1, 0, 0, 'Some test content.', 0, 1, 1, 69, UNIX_TIMESTAMP(NOW()) ),
( 4, 1, 1, 1, 1, 'Some test content2.', 0, 1, 1, 69, UNIX_TIMESTAMP(NOW()) ) )
ON DUPLICATE KEY UPDATE
esjp_content.primary_key=VALUES(esjp_content.primary_key),
esjp_content.template_id=VALUES(esjp_content.template_id),
esjp_content.section_ref=VALUES(esjp_content.section_ref),
esjp_content.position=VALUES(esjp_content.position),
esjp_content.indent=VALUES(esjp_content.indent),
esjp_content.content=VALUES(esjp_content.content),
esjp_content.summary_id=VALUES(esjp_content.summary_id),
esjp_content.role_ref=VALUES(esjp_content.role_ref),
esjp_content.author_id=VALUES(esjp_content.author_id),
esjp_content.event_id=VALUES(esjp_content.event_id),
esjp_content.sys_time=VALUES(esjp_content.sys_time);
Run Code Online (Sandbox Code Playgroud)
它工作正常,如果我一次只尝试插入 1 条记录,但我认为这INSERT …
在以下查询中,我尝试为每个类别获取一个图像
SELECT l.*
FROM (
SELECT id AS category_id,
COALESCE(
(
SELECT *
FROM images li
WHERE li.category_id = dlo.id
ORDER BY
li.save_status DESC, li.category_id DESC, li.id DESC
LIMIT 1
), 0) AS mid
FROM cats_imgs dlo where id='1'
) lo
JOIN images l
ON l.save_status = '3'
AND l.category_id >= lo.category_id
AND l.category_id <= lo.category_id
AND l.id >= lo.mid
Run Code Online (Sandbox Code Playgroud)
但不断收到以下错误:
#1241 - Operand should contain 1 column(s)
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
我有一个SQL查询的问题
这是我的查询:
SELECT `rooms`.*
FROM `rooms`
WHERE (`rooms`.`room_id` NOT IN (
SELECT *
FROM `reservations` `res`
WHERE ('2012-05-03' NOT BETWEEN res.expected_checkin_date
AND res.expected_checkout_date)
AND ('2012-05-08' NOT BETWEEN res.expected_checkin_date
AND res.expected_checkout_date)))
Run Code Online (Sandbox Code Playgroud)
问题是当第二个select
返回null时,它显示以下错误:
#1241 - Operand should contain 1 column(s)
有谁能够帮我?
EDIT
当我运行这个查询时,它显示所有行甚至包含第二个内部的那个select
我不知道为什么?
SELECT `rooms`.*, `type`.*, `status`.* FROM `rooms` INNER JOIN `room_types` AS `type` ON `type`.`room_type_id` = `rooms`.`room_type_id` AND `type`.`num_beds` >= 1 AND type.room_type_id=2 INNER JOIN `room_statuses` AS `status` ON `status`.`room_status_id` = `rooms`.`room_status_id` WHERE (`rooms`.`room_id` NOT IN (SELECT …
Run Code Online (Sandbox Code Playgroud) 我有一个查询,我正在尝试将多个表列分组为"文本",看看我的查询:
SELECT a.id as id,
a.name AS title,
(a.address1, a.address2, a.suburb, a.state, a.pcode) AS text,
a.suburb AS suburb
Run Code Online (Sandbox Code Playgroud)
尝试以这种方式使用时出现此错误:
1241 - 操作数应包含1列
我想做什么不可能?有没有解决这个问题?
我正在尝试运行查询,但收到上述错误。谁能告诉我为什么我会得到它。
UPDATE `catalog_eav_attribute`
SET `used_for_sort_by` = 1
WHERE attribute_id = (
SELECT * FROM `eav_attribute` WHERE `entity_type_id` = (SELECT `entity_type_id` FROM `eav_entity_type` WHERE `entity_model` = "catalog/product") AND `attribute_code` = "created_at");
Run Code Online (Sandbox Code Playgroud)