J S
J S

Reputation: 49

Inserting Data into a table using subquery

I am trying to insert data using a subquery. I am only going to post my SELECT statement below.

SELECT PlaylistCode
FROM Playlists
WHERE Name_Of_Playlist = 'X'
AND 
(SELECT Code
  FROM Songs
  INNER JOIN Artists ON Artists.PageURL = Songs.PageURL
  WHERE Artist = 'X'
  LIMIT 200)

Error Code: 1242. Subquery returns more than 1 row 0.016 sec

Upvotes: 0

Views: 57

Answers (2)

Kiran Patil
Kiran Patil

Reputation: 339

Try to Below Query

SELECT PlaylistCode
FROM Playlists
WHERE exits 
(SELECT Code
  FROM Songs
  INNER JOIN Artists ON Artists.PageURL = Songs.PageURL
  WHERE Artist = 'X'
  LIMIT 200) and Name_Of_Playlist = 'X'

Upvotes: 1

Ed Bangga
Ed Bangga

Reputation: 13006

Based on your requirements, you need to use select case then join corresponding tables

  INSERT INTO Playlists (PlaylistCode)
    SELECT CASE WHEN a.Artist = 'X' THEN 'X' ELSE s.Code END   
    FROM Songs s
    INNER JOIN Artists a ON a.PageURL = s.PageURL

Upvotes: 0

Related Questions