Join 连接两个表,只返回第一个

Join 连接两个表,只返回第一个,join,left-join,Join,Left Join,有什么办法可以改进这段代码吗?我试图根据B和C之间的文件名匹配,同时显示B中的所有列和C中的另一列 SELECT B.filename, B.request_num, B.attachment_name, B.date_time, B.received_date, B.ID, C.station_code FROM B_attachments B JOIN C_fact C ON C.filename = B.filename WHERE C.station_code LIKE '%OAK%

有什么办法可以改进这段代码吗?我试图根据B和C之间的文件名匹配,同时显示B中的所有列和C中的另一列

SELECT B.filename, B.request_num, B.attachment_name, 
B.date_time, B.received_date, B.ID, C.station_code
FROM B_attachments B
JOIN  C_fact C ON C.filename = B.filename
WHERE C.station_code LIKE '%OAK%'
我想问的是,我是否可以在这里使用SELECT*,而不是写出所有的列名。使用SELECT*返回B和C中的所有列。我只需要B和C中的一列。我需要这样做,因为我将为比B多很多列的其他表复制此代码。使用LEFT JOIN也没有帮助

任何帮助都将不胜感激。谢谢

SELECT B.*, C.station_code
FROM B_attachments B
JOIN  C_fact C ON C.filename = B.filename
WHERE C.station_code LIKE '%OAK%'
这应该能奏效

SELECT B.*, C.station_code
FROM ...
这应该能奏效

SELECT B.*, C.station_code
FROM ...
我应该这样做


应该这样做。

我认为这符合您的要求(“使用
选择*
而不是写出所有的列名”,“改进代码”):


我认为这符合您的要求(“使用
选择*
而不是写出所有列名”,“改进代码”):