sql >> Databasteknik >  >> RDS >> Mysql

select-satsen inuti insert-satsen i sql returnerar flera rader

den totala frågan ser ut ungefär som nedan. där du har så ersätt * med kolumnnamn du vill välja!

INSERT INTO table1(first,second,third)

-- replace * with columns name first,second,third
select * from (
-- START YOU'RE select query
(SELECT table2.timemodified FROM `xtable` AS table2,`ytable` AS table3 
        WHERE table3.id = table2.contextid),

    (SELECT table4.id FROM `ztable` AS table4,`ytable` AS table3 WHERE table4.id = table3.instanceid),

    (SELECT murs.id FROM `table5` AS murs,
    `xtable` AS table2, 
    `wtable` AS table6, 
    `ytable` AS table3, 
    `vtable` AS table7 
    WHERE murs.id = table2.userid AND table6.id = table2.roleid AND table3.id = table2.contextid AND table7.instance = table3.instanceid AND table6.id =3)
-- END YOU'RE select query
)

Jag flyttade dina valda uttalanden till en underfråga så att du kan använda det totala resultatet av underfrågorna till din fördel.




  1. SQLSTATE[HY000]:Allmänt fel:1298 Okänd eller felaktig tidszon:'UTC'-fönster

  2. Så här lägger du till vertikala gränser till ditt SQL*Plus / SQLcl-utmatningsnät

  3. Visa alla främmande nyckelbegränsningar för hela MySQL-databasen

  4. Hur man kör SQL Server 2017 &2019 samtidigt på en Mac