KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Table who wid--name-------father---mother 1----Daisy------David----Liza 2----Jenny------Joe------Judy 3----Meggy------Mike-----Manuela 4----Sarah------Joe------Judy 5----Chelsea----Bill-----Hillary 6----Cindy------David----Liza 7----Kelly------Joe------Judy Table ages aid---whoid---age 1-----1--------0 2-----2--------0 3-----3-------14 4-----4-------30 5-----5-------22 6-----6-------17 7-----1-------18 I want that list as a result: id---name------age 1----Meggy-----14 2----Cindy-----17 3----Daisy-----18 (Selected data that bigger than 0) 4----Chelsea---22 5----Sarah-----30 6----Jenny-----30 (Her age is 0 on ages table and Sarah's age with same father and mother) 7----Kelly-----30 (No data on ages table and Sarah's age with same father and mother) I tried that query: SELECT *, (CASE age WHEN '0' THEN ( SELECT age FROM ages a LEFT JOIN who w ON w.wid = a.whoid WHERE w.father = father AND w.mother = mother ORDER BY a.age DESC LIMIT 1 ) ELSE age END ) AS newage FROM who LEFT JOIN ages ON wid = whoid ORDER BY newage What's wrong with that?
Tags (comma-separated)
Save Edits
Cancel