首页 > 解决方案 > MS Access SQL,按特定顺序按年龄排序

问题描述

我的任务:“编译一个 SQL 查询,输出特定商店(输入参数窗口)最年轻买家的年龄”

我已经尝试了一些东西,但是因为我是 SQL 新手,而且我不知道我在做什么,它们似乎都不起作用。

我真的很感激,如果有人会帮助我。

谢谢!

标签: sqlms-access

解决方案


首先,您需要知道要SELECT(或返回)的字段FROM以及您正在查询(询问)数据的表;假设您有以下表格:(tblStores包含商店列表和相关信息),tblCustomers(包含客户和相关信息,例如年龄、姓名、电话号码等)和tblPurchases(包含所有客户在所有商店的所有购买及相关信息)。您想要客户在特定商店购物的最低年龄,因此您可以使用MIN聚合函数。您可能希望根据客户和购买来加入(或关联)表格。请参阅下面示例中的我INNER JOIN的 s。然后使用用户输入的商店名称 (inputStoreName) 过滤结果WHERE; 由于 inputStoreName 未定义,因此在 Access 中这将导致出现参数输入弹出窗口。

SELECT list of fields or aggregating functions you want (comma-separated)
FROM list of tables the fields are in (comma-separated) and how to join the tables
WHERE list of conditions to filter the data (separated by AND or OR)

例子:

SELECT tblStores.Name, tblStores.Description, MIN(tblCustomers.age)
FROM tblStores INNER JOIN ( tblPurchases INNER JOIN tblCustomers on tblPurchases.customerID = tblCustomer.customerID) ON tblStores.storeID = tblPurchases.storeID
WHERE (tblStores.Name = inputStoreName);

我建议检查 W3 学校。它们通常对大多数编程任务很有帮助。如果您提供有关您的数据库的更多信息,我们可以提供更多有针对性的帮助。


推荐阅读