sql - 遍历数据表中的一列以查找匹配值,然后添加到列表以输出以查看
问题描述
我在视图中显示了来自 SQL 表的数据。该表具有以下内容: Authorise(AuthoriseID,TransactionID, TransactionName, AccountID, AccountName, Match) TransactionID 和 AccountID 重复多次,但只一起重复一次(它们来自已通过匹配函数连接的两个不同表)。
目前,我有一个 ActionResult HTTPGET,它使用存储的过程来“从 TransactionID 授权订单中选择 *”。表中的所有内容都返回给用户。我只想要某个 TrnsactionID 的行。然后用户将接受或拒绝(将行发送到数据库中的其他表)。一旦该 TransactionID 的所有行都完成,它将移动到下一个 TransactionID 以及具有该 TransactionID 的所有行。rnsactionID 将发生变化,因此向用户显示的第一个 TransactionID 仅取决于第一个 ID 是什么。
我的问题是,如何遍历数据表中的一列,获取匹配值,仅显示这些行,然后在所有行都被授权后移动到下一个 ID?
我知道我需要将第一个 TransactionID 设置为一个变量,然后遍历数据表,如果该列中的任何其他值与该变量匹配,然后添加到一个列表中......我似乎无法正确。我已经尝试了一些东西,但它看起来不正确。这是一种尝试——
这是我的控制器代码(将所有数据发送到视图时一切正常):
public ActionResult Authorise()
{
SqlConnection con = new SqlConnection();
con = new SqlConnection(ConfigurationManager.ConnectionStrings["dbpath"].ToString());
List<AuthoriseModel> AuthoriseList = new List<AuthoriseModel>();
SqlCommand com = new SqlCommand("GetAuthorise", con);
com.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter(com);
DataTable dt = new DataTable();
con.Open();
da.Fill(dt);
con.Close();
foreach (DataRow dtRow in dt.Rows)
{
string CurrentUID = dtRow["TransactionID"].ToString();
if (dtRow["TransactionID"].ToString().Equals(CurrentUID))
{
AuthoriseList = (from DataRow dr in dt.Rows
select new AuthoriseModel()
{
AuthoriseID = Convert.ToInt32(dr["AuthoriseID"]),
TransactionID = Convert.ToInt32(dr["TransactionID"]),
TransactionName = Convert.ToString(dr["TransactionName"]),
AccountID = Convert.ToInt32(dr["AccountID"]),
AccountName = Convert.ToString(dr["AccountName"]),
PercentMatch = Convert.ToString(dr["PercentMatch])
}).ToList();
}
}
return View(AuthoriseList);
}
然后,此列表将仅显示具有相同 TransactionID 的行,一旦所有行都已处理并从中删除,它将移至下一个 TransactionID?
提前致谢
解决方案
推荐阅读
- firebase - Flutter Firestore 事务多次运行
- architecture - 通过配置或新服务区分微服务逻辑
- java - 为什么 inDaylightTime() 方法在时区返回错误?
- python - Swig - 绑定一个返回对导向器类指针的引用的方法
- oracle - 如何在 oracle 中使用 Regexp_Replace 替换字符串
- ssl - 自签名 SSL 证书中的颁发者证书无效
- docker - Docker Nginx 在端口 80 上与共享主机
- docker - 使用 docker compose 在多个节点上使用 Prometheus + Grafana
- sql - SQL Server:显示最新记录的日期和时间
- user-defined-functions - 我应该在哪里为通用函数注册 spark UDF