ambiguous 1. 含糊不清的 2. 引起歧义的
使用mysql数据库进行左右连接查询的时候出现错误提示 Column 'id' in where clause is ambiguous 原因:多表查询时没有指明是哪张表的id,导致系统报错
left join user_info u2 on u2.id = i.updateId where id = #{id} order by i.updateTime desc 在mysql最后的 where条件中的 id 没有添加别名 i 导致报错 应该是 where i.id = #{id} 才对
所以只要加上表别名,区分开你要查那个表里的id字段,就ok了。 这个错误in where clause is ambiguous多半是因为多表查询的时候几个表中同时出现了某个相同的列名,而在查询条件WHERE后面又没有指定是那个表,而引起的又或者是查询结果里面有两个相同的列名,而没有指定是哪个表使用的时候可以这样,mysql查询前面加表...
该字段在关联表中的出现不止一次,不知道应该查哪一张表。只需在where中加上表名即可 select source.*, t1.username as targetUserName, t2.username as sourceName from sys_message source left join sys_user t1 on source.target_user_id = t1.id ...
where user_id = 1。 这个语句⾥如果像上⾯这种写法就会报如题这个错误:"Column 'user_id' in where clause is ambiguous"。这时只需要给where 后⾯的user_id指定表名就可以了。 写成如下语句: select u.id,u.user_id,u.user_name,a.user_id,a.money from account a le...
新手求大侠帮忙,column'typeid'inwhereclauseisambiguous是怎么回事? Stringsql=selects_commodityStockpile.c_id,s_commodityStockpilemodityCode,s_commodityStockpilemodityName,s_commodityStockpile.oldAmount,s_commodityStockpile.alterationAmount,s_commodityStockpile.remark,s_commodity.color,s_commodity.model+ ...
AND parent_id = #{parentId} </if> <if test="deptName != null and deptName != ''"> AND dept_name like concat('%', #{deptName}, '%') </if> <if test="status != null and status != ''"> AND status = #{status}
Column ‘id’ in where clause is ambiguous 根据上面ambiguous这个单词的意思可以看出,sql语句中id不明确,让mysql不知道是哪个表的id,原因是多表连接时指定了别名,但用id字段时没有指定别名。
简介:这篇文章解释了SQL查询中出现"Column ‘roleId’ in where clause is ambiguous"错误的原因,即在多表查询中,如果没有明确指定表名,相同的列名在where子句中会产生歧义,并提供了修正方法,即明确指定条件中所引用的列属于哪个表。 1、先看错误的sql语句: ...