Fri*_*itz 7 google-docs google-sheets
举个例子,假设我在 Google 文档的同一工作簿中有以下工作表:
SHEET1 | SHEET2
\ A | B | \ A | B | C | D
1| ID |Lookup | 1| Lookup| Name |Flavor | Color
2| 123 | 4445 | 2| 1234 |Whizzer|Cherry | Red
3| 234 | 4445 | 3| 4445 |Fizzer |Lemon | Yellow
4| 124 | 1234 | 4| 9887 |Sizzle |Lime | Blue
5| 767 | 1234 |
6| 555 | 9887 |
Run Code Online (Sandbox Code Playgroud)
显然,Google Docs 并没有考虑到关系数据库,但我试图获得类似于 SQL 查询的结果
SELECT
SHEET1.ID,
SHEET2.*
FROM
SHEET1
LEFT JOIN
SHEET2
ON SHEET1.Lookup = SHEET2.Lookup
Run Code Online (Sandbox Code Playgroud)
得到一个看起来像这样的表
SHEET3
\ A | B | C | D | E
1| ID |Lookup | Name |Flavor | Color
2| 123 | 4445 |Fizzer |Lemon | Yellow
3| 234 | 4445 |Fizzer |Lemon | Yellow
4| 124 | 1234 |Whizzer|Cherry | Red
5| 767 | 1234 |Whizzer|Cherry | Red
6| 555 | 9887 |Sizzle |Lime | Blue
Run Code Online (Sandbox Code Playgroud)
但这就是我目前的立场
SHEET3
\ A | B | C | D | E
1| | | | |
2| 123 | 4445 | #N/A | |
3| 234 | 4445 | | |
4| 124 | 1234 | | |
5| 767 | 1234 | | |
6| 555 | 9887 | | |
Run Code Online (Sandbox Code Playgroud)
目前,我已经设法使用该QUERY函数来获取值SHEET1,并尝试了一些不同的QUERY函数,SHEET3!C1试图使用这篇博客文章作为参考来“ LEFT JOIN”这两张表。此时,我使用的两个函数如下。
SHEET3!A2=QUERY(SHEET1!A2:B20, "SELECT A,B")
SHEET3!C2=QUERY(SHEET2!A2:E20, "SELECT B,C,D WHERE A="""&B2&"""")
并将鼠标悬停在错误上,C2读取“查询已完成,输出为空”。我怎样才能加入这些表?
其他参考:
QUERY 的 Google Docs 语法页面
在 Sheet3 中执行此操作。
在单元格 A1 中,获取正确的标题:
={Sheet1!A1:B1,Sheet2!B1:D1}
Run Code Online (Sandbox Code Playgroud)
在单元格 A2 中,要获取连接数据表,请尝试以下公式:
=FILTER({Sheet1!A2:B,
VLOOKUP(Sheet1!B2:B, {Sheet2!A2:A, Sheet2!B2:D}, {2,3,4}, false)},
Sheet1!B2:B<>"")
Run Code Online (Sandbox Code Playgroud)
我写了一份关于这个主题的综合指南,名为:
如果将 SHEET1 复制到 SHEET3 (A1),然后复制到 C2:
=vlookup($B2,Sheet2!$A:$D,column()-1,0)
Run Code Online (Sandbox Code Playgroud)
横向和向下复制应该给出添加三个列标签后显示的结果。
| 归档时间: |
|
| 查看次数: |
14192 次 |
| 最近记录: |