新技能|access在数据处理中的应用

新技能|access在数据处理中的应用

这几天在做医用耗材的使用分析,需要用到很多excel表格并把几个表格的数据互相匹配,之前学过vlookup功能,但每次用的都不是很顺利且功能有些局限。一个同事说用access啊,很好用。用完之后想大呼:真特么救星!

下面讲一下access中SQL语句的应用,基于我的应用,仅讲述一下内联接、外联接(左联接、右联接、全联接)。拿二个表格做示例:

表A

表B

ID

批次

生产日期

有效期

数量

NAME

采购人

入库时间

234

838

2018/3/1

2020/1/1

7

234

小李

2018/3/3

376

345

2018/3/3

2020/1/3

5

376

小李

2018/3/5

48

837

2018/3/7

2020/1/7

7

48

小李

2018/3/9

一、内联接

定义:查询结果仅显示二个表格中相匹配的行。

SQL语句:SELECT A.*,B.* FROM A INNER JOIN B ON A.ID=B.NAME

返回内容:

二、外联接

1、左联接

定义:查询结果显示左表的全部行及右表的匹配行。如果左表的某行在右表中没有匹配行,则在查询结果中左表的行对应的右表为空值。

SQL语句:SELECT A.*,B.* FROM A LEFT JOIN B ON A.ID=B.NAME

返回内容:

ID

批次

生产日期

有效期

数量

NAME

采购人

入库时间

234

838

2018/3/1

2020/1/1

7

234

小李

2018/3/3

123

434

2018/3/2

2020/1/2

3

376

345

2018/3/3

2020/1/3

5

376

小李

2018/3/5

987

746

2018/3/4

2020/1/4

5

376

837

2018/3/5

2020/1/5

67

948

756

2018/3/6

2020/1/6

7

48

837

2018/3/7

2020/1/7

7

48

小李

2018/3/9

2、右联接

定义:查询结果显示右表的全部行及左表的匹配行。如果左表的某行在右表中没有匹配行,则在查询结果中右表的行对应的左表为空值。

SQL语句:SELECT A.*,B.* FROM A RIGHT JOIN B ON A.ID=B.NAME

返回内容:

ID

批次

生产日期

有效期

数量

NAME

采购人

入库时间

234

838

2018/3/1

2020/1/1

7

234

小李

2018/3/3

564

小李

2018/3/4

376

345

2018/3/3

2020/1/3

5

376

小李

2018/3/5

5

879

小李

2018/3/6

67

908

小李

2018/3/7

7

362

小李

2018/3/8

48

837

2018/3/7

2020/1/7

7

48

小李

2018/3/9

3、全联接

定义:查询结果中显示左表和右表的全部行。左表、右表中无法匹配的行分别以空值列出。

SQL语句:SELECT A.*,B.* FROM A FULL JOIN B ON A.ID=B.NAME

返回内容:

ID

批次

生产日期

有效期

数量

NAME

采购人

入库时间

234

838

2018/3/1

2020/1/1

7

234

小李

2018/3/3

123

434

2018/3/2

2020/1/2

3

376

345

2018/3/3

2020/1/3

5

376

小李

2018/3/5

987

746

2018/3/4

2020/1/4

5

376

837

2018/3/5

2020/1/5

67

948

756

2018/3/6

2020/1/6

7

48

837

2018/3/7

2020/1/7

7

48

小李

2018/3/9

564

小李

2018/3/4

879

小李

2018/3/6

908

小李

2018/3/7

362

小李

2018/3/8

你可能感兴趣的:(新技能|access在数据处理中的应用)