如何在MySql中返回不同的列而不是标准列?查询

  • 本文关键字:标准 查询 MySql 返回 mysql
  • 更新时间 :
  • 英文 :


我有2个表。我想返回具有1个或更多相互依赖的程序的标题。我能够通过交集返回程序的id,但不确定如何修改我的SQL语句以仅返回名称。本质上,我想vlookup使用program_ID,看看它是否与project_ID匹配。如果有匹配,我想返回project_ID的title。

SELECT DISTINCT program_ID
FROM PROJECTS
WHERE program_ID IN (SELECT DISTINCT project_ID FROM INTERDEPENDENCE);

项目program_ID

JOIN代替IN:

create table PROJECTS(
title varchar(50),project_ID int,program_ID int);
insert into PROJECTS VALUES
('ABC', 1,2),
('DEF', 2,NULL),
('GHI', 3,2),
('JKL', 4,1);
create table
INTERDEPENDENCE(
interdependence_ID int, name varchar(50),project_ID int);
insert into INTERDEPENDENCE values
(10,'aaa',1),
(11,'bbb',2);
SELECT DISTINCT program_ID, name
FROM PROJECTS JOIN
(SELECT DISTINCT project_ID, name FROM INTERDEPENDENCE) I
ON program_ID=I.project_ID;

这是一个演示小提琴

相关内容

  • 没有找到相关文章

最新更新