亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

mysql - sql subquery return more than 1 row

瀏覽:113日期:2022-06-18 18:54:31

問題描述

update orders_father set ostatus=5,ofintimesys=now() where oid =(select oid from(SELECT oid FROM orders_father where TIMESTAMPDIFF(HOUR,odlvtime,now())>parameter and ostatus=4)as tempTable);

這是代碼1。

update orders_father set ostatus=5,ofintimesys=now() where oid =any(select oid from(SELECT oid FROM orders_father where TIMESTAMPDIFF(HOUR,odlvtime,now())>parameter and ostatus=4)as tempTable);

這是代碼2,在oid=后面增加了any

我的疑問是,為何代碼1會(huì)出現(xiàn)Error Code: 1242. Subquery returns more than 1 row這種錯(cuò)誤,而代碼2不會(huì)? 謝謝各位大神

背景:我是在存儲(chǔ)過程中使用的...

問題解答

回答1:

where xxx = yyy的時(shí)候,右邊必須是單一的值,不能是多個(gè)值,而你第一個(gè)語句里面的

(SELECT oid FROM orders_father where TIMESTAMPDIFF(HOUR,odlvtime,now())>parameter and ostatus=4)as tempTable)

會(huì)查出多個(gè)值,所以報(bào)Error Code: 1242. Subquery returns more than 1 row的錯(cuò)誤

解決的方法就是把where xxx = yyy變成where xxx in(yyy)或者where xxx = any yyy,這兩個(gè)表達(dá)是一個(gè)意思,不過any還可以其他的比較,比如where xxx > any yyy

回答2:

any 相當(dāng) in()

相關(guān)文章:
主站蜘蛛池模板: 亚洲精品中文字幕久久久久久 | 欧美午夜不卡在线观看最新 | 看欧美的一级毛片 | 中文字幕亚洲一区二区va在线 | 久久国产精品永久免费网站 | 国产在线一区二区三区四区 | 美女又爽又黄视频 | 久草资源福利 | 国产成人精品三级 | 国产aⅴ精品一区二区三区久久 | 久久免费视频在线观看 | 久久久国产一区二区三区丝袜 | 91久久免费视频 | 欧美巨大精品videos | 青青自拍视频一区二区三区 | 久久在线国产 | 男人精品一线视频在线观看 | 久久精品久久久 | 中国女警察一级毛片视频 | 精品视频99| 中国精品自拍 | 国产高清在线精品一区a | 日产一区二区三区四区 | 欧美日韩中文字幕在线观看 | 欧美成人a级在线视频 | 欧美一级特黄视频 | 视频在线亚洲 | 99久久精品国产一区二区成人 | 欧美性色xo影院在线观看 | 久久看精品| 成人午夜做爰视频免费看 | 色网址在线 | 99久久精品国产9999高清 | 全国男人的天堂天堂网 | 欧美一级成人免费大片 | 成人a在线| 欧美激情免费观看一区 | 欧美在线黄色 | 成人午夜免费在线观看 | 成人a毛片免费全部播放 | 9cao在线精品免费 |