解决"Subquery returns more than 1 row"sql查询错误

http://blog.csdn.net/c517984604/article/details/7052186 [Err] 1242 - Subquery returns more than 1 row   --表示子查询返回了多行数据

例如:

select * from table1 where table1.colums=(select columns from table2)

解决方法

1,select * from table1 where column=any(select columns  from table2)

2,select * from table1 where column in(select columns  from table2);

3,select * from table1 a where exists 
(select columns from tableb2 b

where b.column=a.column

);

时间: 2024-12-20 03:03:37

解决"Subquery returns more than 1 row"sql查询错误的相关文章

错误代码: 1242 Subquery returns more than 1 row

1. 错误描述 1 queries executed, 0 success, 1 errors, 0 warnings 查询:SELECT t.id, DATE_FORMAT( t.statisTime, '%Y-%m-%d %H:%i:%s' ) statisTime, (SELECT `id` FROM t_truck_info WHERE id = t.plateId... 错误代码: 1242 Subquery returns more than 1 row 执行耗时 : 0.009 s

mysql 报错 ‘u'Subquery returns more than 1 row'’

watch_course_sql = """select DATE_FORMAT( FROM_UNIXTIME(a.CreateTime / 1000) , '%%Y-%%m-%%d %%T') regtime, a.username FROM bskuser a where a.UserName in (select username from bskchapterlist where lessonid = (select id from bsklesson a WHERE

java.sql.SQLException: ORA-01427: single-row subquery returns more than one row

ORA-01427: 单行子查询返回多个行 sql语句如下: select h.operator,       to_char(h.operate_tm, 'yyyy-mm-dd hh24:mi:ss') operate_tm,       (select t.res_label name          from [email protected] t         where t.id = h.system_id) system_id,       (select t.res_label

Subquery returns more than 1 row查询结果多于一行

例如 :WHERE(" use_id =(select user_id from store_staff where store_id="+ store_id + ")"); 改为  WHERE(" use_id =any(select user_id from store_staff where store_id="+ store_id + ")");

DBA推荐的7法宝提高SQL查询性能

SQL查询数据库时,可以采取一系列的方式来提高查询的速度和性能.比如用case代替update,使用临时表和分批进行更新等.本文介绍了7种提高查询速度的方法,请读者参考. SQL查询数据库时,适当遵循一些原则可以让工作变得更加轻松,本文就列举7个可以灵活运用的原则,它们可以帮助你提高SQL查询速度,当然这些技巧你可以咨询DBA获得更多的信息. 1.用case代替update 要更新一条记录,我们立即会想到update,这个问题非常常见,许多开发人员经常忽视这个原则,因为使用update看起来非常

解决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 'order (order_name, customer)

在学习hibernate一对多映射关系时,根据视频学习的时候,例子是顾客和订单的问题,一个顾客有多个订单.按照视频中的敲代码出现了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 'order (order_name, customer) 原因是order是mysql关键字,不能做

解决因为链表过长,sql查询慢的问题

/** * 解决因为链表过长,sql查询慢的问题 * 使用分治算法,先切分链表,然后查询结果,最后合并结果 *  * @author lingpy * @since 1.0 */public class DivideAndConquerUtil {    /**     *      * @param dataList 元数据     * @param exceuter 执行类     * @return     * @throws Exception     */    public stat

SQL 查询性能优化----解决书签查找

先来看看什么是书签查找: 当优化器所选择的非聚簇索引只包含查询请求的一部分字段时,就需要一个查找(lookup)来检索其他字段来满足请求.对一个有聚簇索引的表来说是一个键查找(key lookup),对一个堆表来说是一个RID查找(RID lookup).这种查找即是——书签查找. 书签查找根据索引的行定位器从表中读取数据.因此,除了索引页面的逻辑读取外,还需要数据页面的逻辑读取. 从索引的行定位器到从表中读取数据这之间会产生一些额外的开销,本文就来解决这个开销. 先看下我的测试表结构: 其中可

创建SQL作业错误的解决方法(不能将值 NULL 插入列 'owner_sid',表 'msdb.dbo.sysjobs';列不允许有空值。)

在用SQL语句创建SQL Server作业时有时出现如下错误: 消息 515,级别 16,状态 2,过程 sp_add_job,第 137 行 不能将值 NULL 插入列 'owner_sid',表 'msdb.dbo.sysjobs':列不允许有空值.INSERT 失败. 语句已终止. 这可能与为作业创建的数据库登录ID有关,这个登录ID需要是数据库的所有者(我的是sa),因此将 @owner_login_name=N'HYSERITC003/wellcomm', 中的N'HYSERITC00