mysql - 如何匹配两个不同表中的列并将选定的列输出到 MySQL 中的第三个表?
问题描述
我目前在 MySQL 中有三个表,我希望前两个表中匹配的 UPC 值将表 2 中的其他内容输出到表 3。我制作了下表,说明我希望它们如何输出。
Table 1
|-------------------|
| UPC |
|-------------------|
| 123456789851 |
|-------------------|
| 123456789789 |
|-------------------|
| 123456789765 |
|-------------------|
Table 2
|-------------------|--------------|------------|---------------|
| UPC | Shelf | Isle | ItemName |
|-------------------|--------------|------------|---------------|
| 123456789851 | C | 1 | Eggs |
|-------------------|--------------|------------|---------------|
| 123456789789 | A | 1 | Milk |
|-------------------|--------------|------------|---------------|
| 123456789765 | D | 2 | Coffee |
|-------------------|--------------|------------|---------------|
| 123456789582 | A | 5 | Apple Juice |
|-------------------|--------------|------------|---------------|
| 123456789542 | S | 2 | Cereal |
|-------------------|--------------|------------|---------------|
如果表 1 中的 UPC 与表 2 中的 UPC 匹配,则将除 UPC 之外的所有内容输出到表 3
Table 3
|--------------|------------|---------------|
| Shelf | Isle | ItemName |
|--------------|------------|---------------|
| C | 1 | Eggs |
|--------------|------------|---------------|
| A | 1 | Milk |
|--------------|------------|---------------|
| D | 2 | Coffee |
|--------------|------------|---------------|
解决方案
加入Table1
到,Table2
以便您可以插入匹配的行:
INSERT INTO Table3(Shelf, Isle, ItemName)
SELECT t2.Shelf, t2.Isle, t2.ItemName
FROM Table2 t2 INNER JOIN Table1 t1
ON t1.UPC = t2.UPC
或与EXISTS
:
INSERT INTO Table3(Shelf, Isle, ItemName)
SELECT t2.Shelf, t2.Isle, t2.ItemName
FROM Table2 t2
WHERE EXISTS (SELECT 1 FROM Table1 t1 WHERE t1.UPC = t2.UPC)
推荐阅读
- angular - Angular Material 仅适用于 Angular Flex 布局?
- sql-server - SQL Server - 将两列值合二为一
- python - AttributeError: '对象没有属性'
- reactjs - 如何在渲染文本元素之前设置文本字体?
- python - 如何可视化 LSTM 单元 Tensorflow Matplotlib?
- sql - ExecuteNonQuery 使用的下载带宽比上传带宽多得多?
- angular - 仅使用 [ngClass] 条件正确显示一种字体真棒图标
- git - 从 Visual Studio 中的过去提交创建新的 git 分支时,如何处理数组越界异常?
- html - 卡片覆盖仅在图像上滑入?
- geotools - 边界框中没有 CRS 的 GeoTools getCapabilities