Ok. I don't know the full XPath to either your secondary data source node or to your main data source node where you currently have the default value from the 2ds - but the code after you run the SQL query might be something like:
XPathNavigator secDSNav = DataSources["QuestionswithResponses"].CreateNavigator();
xMain.SelectSingleNode("/my:myFields/my:group1/my:group2[last()]/my:QuestionText", nSpace).Value = secDSNav.SelectSingleNode("XPath to QuestionText here", nSpace).Value;
You'll need to add correct XPaths and I am sure I have errors here - again, it has been a long time since I've written code for InfoPath. But hopefully this will give you an idea of what to try.