Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]多条件更新(条件能否使用类似通配符功能)

kuiblue  发表于:2016-07-19 15:17:23  
复制

问题如下,详见附件,请老师们指点,谢谢!问题    问题-2003版

 

Top
朱先生 发表于:2016-07-19 16:00:42

UPDATE 表2 INNER JOIN 表3 ON (表2.日期 = 表3.日期) AND (表2.车型 = 表3.车型) AND (表2.排量 = 表3.排量) SET 表3.金额 = 表2.金额; 

    或
UPDATE 表2, 表3 SET 表3.金额 = 表2.金额
WHERE (表2.日期=表3.日期) And (表2.车型=表3.车型) And (表2.排量=表3.排量);



kuiblue 发表于:2016-07-19 16:08:55

你好,朱先生你好,没有到达想要的效果。排量为 * 的没有更新到。



朱先生 发表于:2016-07-19 17:33:09
kuiblue 发表于:2016-07-19 17:43:10
 朱先生你好!还是没达到效果,上面例子第6项的锐志多了数据,因为忽略了“排量”这个字段,请您再帮忙,非常感谢!看有什么新思路。

kuiblue 发表于:2016-07-20 10:38:20
各位大神,原主题例子解决问题的思路是否出了问题,有没有别的思路?非常感谢您们的热心帮助!

yuhong 发表于:2016-07-20 12:45:08
UPDATE 表2 INNER JOIN 表3 ON (表2.车型 = 表3.车型) AND (表2.日期 = 表3.日期) SET 表3.金额 = [表2].[金额], 表3.排量 = iif([表3].[排量] ='*','*',[表3].[排量]);

kuiblue 发表于:2016-07-20 13:01:35
yuhong 你好!还是没达到效果,您给的查询第6项的锐志多了数据.请您再帮忙,非常感谢!看有什么新思路。

杜超 发表于:2016-07-20 15:20:10

做两个更新查询来完成

UPDATE 表2 INNER JOIN 表3 ON (表2.排量 = 表3.排量) AND (表2.车型 = 表3.车型) AND (表2.日期 = 表3.日期) SET 表3.金额 = [表2].[金额];
UPDATE 表2 INNER JOIN 表3 ON (表2.日期 = 表3.日期) AND (表2.车型 = 表3.车型) SET 表3.金额 = [表2].[金额]
WHERE (((表2.排量)="*"));



总记录:8篇  页次:1/1 9 1 :