对数据表或实体列表的 SQL 查询
Posted
技术标签:
【中文标题】对数据表或实体列表的 SQL 查询【英文标题】:SQL Query on a Datatable or List of entity 【发布时间】:2021-02-19 18:12:43 【问题描述】:我有一个在运行时使用 Excel 工作表中的值生成的 DataTable。
我的问题:有没有一种方法可以对数据表中的数据运行 SQL 查询,以便它可以返回数据?
var dt = datatable.select("select col1,col2 from dt");
我会将括号中的查询作为参数。
【问题讨论】:
dotnetperls.com/datatable-select forums.asp.net/t/… c-sharpcorner.com/UploadFile/0f68f2/… 感谢您的回复,但使用此我无法通过直接 sql 命令查询数据表。我正在寻找将 sql 命令发送到 select like 扩展方法 【参考方案1】:没有一种方法可以完全满足您的需求。您可以像这样使用DataTable
Select
方法:
DataRow[] rows = dt.Select();
foreach (DataRow dr in rows)
Console.WriteLine(dr["col1"]);
Console.WriteLine(dr["col2"]);
参考:DataTable.Select Method
【讨论】:
谢谢米奇小麦。看起来没有直接将 sql 命令传递给 Select 方法的方法。【参考方案2】:也许您可以将其用作 CTE?
With YOUR_CTE AS (
SELECT COL1, COL2, FROM TABLE
)
SELECT * FROM ANOTHER_TABLE
WHERE WHATEVER = (SELECT COL1 FROM YOUR_CTE)
【讨论】:
可能你没有理解我的问题。阅读 excel 表后,我已经有一个数据表对象。现在我想从纯 sql 命令中查询它,就像我们在 python 中使用数据框有这个功能一样,您可以将纯 sql 命令发送到数据框以上是关于对数据表或实体列表的 SQL 查询的主要内容,如果未能解决你的问题,请参考以下文章
Spring Data JPA:查询如何返回非实体对象或对象列表?