有些人可能已经注意到这一点,我想确认一下,我对复杂的 SQL 字符串确实缺乏经验。我只知道简单的 SELECT 、 INSERT 、 UPDATE 和 DELETE 语句。为了实现我的目的,我经常使用 2 个 SELECT 语句,比如这个:
con.Open();
string cmdstr = "SELECT UNIQUE FROM recipeList WHERE `stock_ID` = '" + stockIDTxtbox.Text + "'";
cmd = new MySqlCommand(cmdstr, con);
dr = cmd.ExecuteReader();
string menuID = "";
while (dr.Read())
{
menuID = (dr["menu_ID"].ToString());
}
dr.Close();
con.Close();
con.Open();
string cmdstr = "SELECT `menu_name` FROM recipedb WHERE `menu_ID` = '" + menuID + "'";
cmd = new MySqlCommand(cmdstr, con);
dr = cmd.ExecuteReader();
string menuName = "";
while (dr.Read())
{
menuName = (dr["menu_name"].ToString());
this.listView1.Items.Add(new ListViewItem(new string[]{ menuName }))
}
dr.Close();
con.Close();
任何想法如何缩短这个? o.O
最佳答案
您可以将 SQL 编写为:
string queryString = "SELECT r2.menu_name "+
"FROM recipelist rl "+
"INNER JOIN recipedb r2 "+
"ON rl.menu_ID = r2.menu_ID "+
"WHERE r1.stock_ID = '" + stockIDTxtbox.Text + "'";
关于c# - 另一个缩短SQL字符串? C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13983863/