一个查询问题

shipping 2008-09-14 10:28:35
我现在有个表,http://access911.net/csdn/FileDescription.asp?mdb=2008-9-14&id=26



其中分别表示的是
item 货物名称 vendor 供应商名 CURRENCY 汇率 QUANTITY 数量 UNIT_PRICE 单价 CNY 人民币结算 USD 美元结算 EUR 欧元结算,其中CNY数值为“1”,USD数值为“7”,EUR数值为“10”

现在想做个查询,想知道每个供应商换成人民币结算后每个供应商总共的采购额是多少?
采购额=单价*汇率*数量,即如果是用total表示总的采购额的话并且是用欧元(EUR)计算的话,total=【UNIT_PRICE 】*【QUANTITY 】*10,

现在我困惑不解的是,我想通过 access表达式生成器 的IIF来实现,
就是如果是人民币(即CNY)的话,total=【UNIT_PRICE 】*【QUANTITY 】*1;
就是如果是美元(即USD)的话,total=【UNIT_PRICE 】*【QUANTITY 】*7;
就是如果是欧元(即EUR)的话,total=【UNIT_PRICE 】*【QUANTITY 】*10;

呃,可是就是无法达到我希望的结果


以下是我在表达式生成器那边用的语句
TOTAL1: IIf([CURRENCY]="CNY",[TOTAL]=[Table1]![UNIT_PRICE]*[Table1]![QUANTITY],IIf

([CURRENCY]="EUR",[TOTAL]=[Table1]![UNIT_PRICE]*[Table1]![QUANTITY]*10,IIf

([CURRENCY]="USD",[TOTAL]=[Table1]![UNIT_PRICE]*[Table1]![QUANTITY]*7,)))


各路英雄好汉祖国栋梁,摆脱了。。。
谢谢!
...全文
60 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ewang11 2008-09-14
  • 打赏
  • 举报
回复
上面的语句变量错了,修改后如下

SELECT VENDOR, SUM(Table1.[UNIT_PRICE]*Table1.QUANTITY*汇率表.CURRENCYRate) AS TOTAL
FROM Table1 INNER JOIN 汇率表 ON Table1.CURRENCY = 汇率表.CURRENCY
GROUP BY VENDOR
ewang11 2008-09-14
  • 打赏
  • 举报
回复
增加一个汇率表,
CURRENCY CURRENCYRate
CNY 1
USD 7
EUR 10

SELECT VENDOR, SUM(Table1.[UNIT_PRICE]*Table1.QUANTITY*汇率表.CURRENCYRate) AS TOTAL
FROM Table1 INNER JOIN 汇率表 ON Table1PsDeliveryMain.CURRENCY = 汇率表.CURRENCY
GROUP BY VENDOR
shipping 2008-09-14
  • 打赏
  • 举报
回复
希望能通过access的查询结局,小弟很菜,所以大虾们多多包涵。。。
shipping 2008-09-14
  • 打赏
  • 举报
回复
各路英雄好汉祖国栋梁,拜托了。。。

诚征解决办法,感激涕零感激涕零啊

7,713

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧