当我尝试使用此查询更新我的表时
java -jar /localdisk/selenium/2.53.1/selenium-server-standalone-2.53.1.jar -port 0
消息是:
子查询返回的值超过1。这是不允许的 子查询跟随=,!=,<,< =,>,> =或当子查询用作 表达。
更新 我的桌子是sekolah
我的领域是:
类 月 总siswa 按比例按比例
答案 0 :(得分:1)
如果两者都是同一张表,那么它会有所帮助:
UPDATE s SET s.rata-rata = (s.[total siswa]*12)
FROM sekolah s
where s.class='7IPA' and month(s.Date) = 08
OR
UPDATE sekolah SET
rata-rata = ([total siswa]*12) WHERE class='7IPA' and month(Date) = 08
答案 1 :(得分:1)
错误原因很明显。意思是,嵌套查询正在获取多行,而Update语句只搜索一个值。
两种解决方案
从Class表中删除重复项。
update sekolah set [rata-rata] =
(select TOP 1 ([total siswa]*12) from class where [class]='7IPA' and month([Date]) = 08)
where [class]='7IPA' and month([Date]) = 08
答案 2 :(得分:0)
更新sekolah t1加入sekolah t2 ON t1.class ='71PA'和t2.month = '08' SET t1.rata-rata =(t1。[total siswa] * 12)