您的位置:首页 > 编程语言 > Java开发

不同运行环境下JAVA出现的异常(持续更新)

2012-10-15 10:41 218 查看
1》Linux系统下,mysql运行此SQL语句会得到空结果(红色部分为SQL不同处):

select t.s_id
from t_product_info t
where t.s_id = 425 and not exists (select 1 from t_saleout_detail where bill_id=240 and prod_id=425);


运行结果:

+------+
| s_id |
+------+
|  425 |

同类型的SQL:

select t.s_id
from t_product_info t
where t.s_id = 425 and not exists (select 1 from t_saleout_detail where bill_id=240 and prod_id=t.s_id);

运行结果:

Empty set (0.00 sec)

这是个很奇怪的问题。两个SQL的唯一区别是, 一个是子查询赋与实际的值(prod_id=425),另一个是引用原查询的值(prod_id=t.s_id) . 在WINDOWS下,两种SQL是等效的,但在LINUX下,mysql子查询不能引用原查询的字段。 先记录这个问题吧,如果有高人知道原因,还请详解。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐