2016-11-05 77 views
-1

我想从表中选择所有名称并使用str.find来查找句子,但只选择第一条记录。字符串和从sql中选择列

 executeQuery("SELECT Name FROM sql_namestable;"); 
       char aName[128]; 
       strcpy(aName, getString("Name").c_str()); 
       std::string str ("Deadname anothername testname killername poolname"); //for example 
       std::string str2 (aName); 
       std::size_t found = str.find(str2); 
       dbg_msg("names","%s", aName); 

       if (found!=std::string::npos) 
        { 
         // code 
        } 

结果:

[names]: Dead 

我的表列;

Dead, Killer, Test, Pool; 

这是我的第一行sql表中。我如何获得结果中的所有行列名?

+0

SQLSERVER或MySQL ???? – scaisEdge

+0

mysql, 我在Windows 10中使用wampserver 10 –

回答

0

在MySQL中您可以使用GROUP_CONCAT

SELECT group_concate(Name) FROM sql_namestable; 
+0

SELECT%GROUP_CONCAT(Name)from%s_namestable; 现在显示此错误: MySQL的错误:MySQL_ResultSet ::的getString:的 'columnIndex' 无效值时,这条线: 的strcpy(aName,的getString( “名称”)c_str())。 –

+0

@KingGta你是什么意思eaxplain更好..(从%s_nametbale是不允许的)..你不能使用wildchar表名 – scaisEdge

+0

对不起,因为%s SELECT sql_status; –