在SQL查询中返回同一行中的不同列
我正在处理与远程MySQL数据库交互的项目。一切正常,我准备好继续前进。我已成功执行了几个查询,其中一个查询是在数据库中存在特定记录时返回(true或false)。这部分工作很好。现在我想要做的不是执行布尔搜索,而是返回布尔搜索返回true的同一行中另一个单元格的实际值(我希望这很有意义)。换句话说,如果行100列0中存在一个字符串,我想在100行在SQL查询中返回同一行中的不同列
这里返回第3列的值是当前的代码:
Private Function LicenseExists(argKey As String) As Boolean
Dim strQuery As String
Dim connection As MySqlConnection
connection = New MySqlConnection()
connection.ConnectionString = "Server=domain.com; Uid=username; Pwd=password; Database=db_name;"
strQuery = "SELECT column_name FROM table_name WHERE column_name=?somevalue"
Using SQLcmd = New MySqlCommand(strQuery, connection)
SQLcmd.Parameters.AddWithValue("?somevalue", argKey)
connection.Open()
Using reader = SQLcmd.ExecuteReader()
Return reader.Read()
End Using
End Using
End Function
简单...
strQuery = "SELECT column_name, other_column_name FROM table_name WHERE column_name=?somevalue"
其中other_column_name
是你感兴趣的其他列。
然后来获取值...
While reader.Read
cboMessage.Items.Add(New clsMessage(reader.GetValue(reader.GetOrdinal("other_column_name"))))
End While
谢谢伊恩。那么我只需要将“as Boolean”更改为“as String”? –
是的,我相信如此... –
太棒了!现在尝试。再次感谢。 - 约翰 –
这将是一个休息时间,抢咖啡(或其他合适的饮料),并通读一些关于SQL和ADO.NET的教程的好时机。 – 2013-01-04 20:10:16
@pst lol,是的,我一直在这样做,我知道SELECT查询,但不知道如何返回值而不是真或假。 –