【发布时间】:2011-08-30 05:24:59
【问题描述】:
我之前问过这个问题并得到了Best approach to write query 的答案,但问题是如果您必须将此结果保存在列表中,那么就会出现重复记录。例如 给定EXAMPLE的连接结果表
看到有重复的行。您如何过滤掉它们,同时保存订单号的数据? 当然可能有一些方法,但我正在寻找一些很好的方法
我们如何将数据存储在列表中而不在列表中创建重复的行?
我当前的表格代码是
int lastUserId = 0;
sql_cmd = new SqlCommand();
sql_cmd.Connection = sql_con;
sql_cmd.CommandText = "SELECT * FROM AccountsUsers LEFT JOIN Accounts ON AccountsUsers.Id = Accounts.userId ORDER BY AccountsUsers.accFirstName";
SqlDataReader reader = sql_cmd.ExecuteReader();
if (reader.HasRows == true)
{
Users userToAdd = new Users();
while (reader.Read())
{
userToAdd = new Users();
userToAdd.userId = int.Parse(reader["Id"].ToString());
userToAdd.firstName = reader["accFirstName"].ToString();
userToAdd.lastName = reader["accLastName"].ToString();
lastUserId = userToAdd.userId;
Websites domainData = new Websites();
domainData.domainName = reader["accDomainName"].ToString();
domainData.userName = reader["accUserName"].ToString();
domainData.password = reader["accPass"].ToString();
domainData.URL = reader["accDomain"].ToString();
userToAdd.DomainData.Add(domainData);
allUsers.Add(userToAdd);
}
}
对于第二个表,我有一个自定义列表,它将保存第二个表中所有数据的条目。
返回的表是有连接的表,并且有多个相同的行
【问题讨论】:
标签: c# sql query-optimization