![](/img/trans.png)
[英]SQL: SELECT id, MAX(y.DateCreated) FROM x LEFT JOIN y in Linq?
[英]LINQ to SQL - FROM X WHERE X = “1” SELECT Y
我對LINQ中的查詢有疑問:
DataClasses1DataContext db = new DataClasses1DataContext();
var shpnme = from p in db.Orders
where p.ShipCity == "A"
select p.ShipName;
我是否認為該數據庫將使用Orders數據庫,並且在“ ShipCity”中的任何條目=“ A”的哪個地方都將返回該ShipCity條目的船名,這是正確的嗎?
您還能做通配符嗎? 例如A *
是的,您是正確的,這將返回ShipCity等於“ A”的所有ShipName。 可以使用.Contains()
.StartsWith()
和.EndsWith()
進行某種通配符搜索
var shpnme = from p in db.Orders
where p.ShipCity.StartsWith("A")
select p.ShipName;
它將使用Orders 表 ,而不是數據庫 。 該數據庫在邏輯上等於LINQ to SQL中的上下文。 否則,您的假設是正確的。
要執行通配符,請使用StartsWith()
方法。
var shpnme = from p in db.Orders
where p.ShipCity.StartsWith("A")
select p.ShipName;
您可以在此解決方案中使用.Contains(), .StartsWith() and .EndsWith()
DataClasses1DataContext db = new DataClasses1DataContext();
var shpnme = from p in db.Orders
where p.ShipCity.Contains("A")
select p.ShipName;
要么
DataClasses1DataContext db = new DataClasses1DataContext();
var shpnme = from p in db.Orders
where p.ShipCity.EndsWith("A")
select p.ShipName;
OR
DataClasses1DataContext db = new DataClasses1DataContext();
var shpnme = from p in db.Orders
where p.ShipCity.StartsWith("A")
select p.ShipName;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.