简体   繁体   中英

How to select multiple columns in a select sub-query in MySQL database?

I am trying to get a row of another table as a sub-query of the SELECT query.

SELECT g.ip, g.version, t.testid, t.status, m.rundate, t.runid , (select * from B where runid=t.runid and testid=t.testid) 
  FROM Tests t, Master m, Env g
        WHERE t.runid=m.runid
        AND t.runid=g.runid
        AND g.version = "1.2.3"
        AND t.testid like "%test_name%" 
        AND g.ip in ("198.18.111.222")
        order by m.rundate desc;

How can this be achieved? Thanks!

Try with this:

SELECT g.ip, g.version, t.testid, t.status, m.rundate, t.runid , c.* from B c 
Join Tests t on t.runid =t.testid 
join Master m on t.runid=m.runid 
join Env g on t.runid=g.runid 
WHERE g.version = "1.2.3" AND t.testid like "%test_name%" 
AND g.ip in ("198.18.111.222")
order by m.rundate desc;

at line 2 if there is any id in B table which matches with the id in Tests replace t.runid = t.testid (suppose if you have runid in B table which relates to test table testid then replace with c.runid = t.testid)to the requirement in which the B table and tests table are satisfying the scenario of matching ID's(PK and FK).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM