2010-12-07 23 views
-1

我會採取C#或VB.NET的建議。使用LINQ to SQL來查詢字符串中的某個詞開始的字

我正在使用LINQ to SQL查詢一些數據。

這裏是我的僱員表colummns:

-FirstName(或givename即約翰) -LastName(有中間名和姓的空間分隔,即蘋果Tenny

有些人中間的名字和一些別「T。下面是一些樣本數據。

-FirstName名字

  • 約翰的Mac Tenny(有中間名字 「蘋果」)
  • 邁克·米卡(無中間名)
  • 薩拉·喬ANSI(與中間名 「喬」)
  • 馬丁·大衛(無中間名)
  • 斯科特·喬(無中間名)

我想查詢中間名或姓氏以搜索條件開始的人。以下是我搜索與中間名員工開始與 「喬」:

  query = From emp In db.Employees _ 
        Where emp.LastName.StartsWith("joe") _ 
        Select emp 

如何查詢與姓(姓氏的最後一部分)的員工開始使用「喬」?

謝謝。

回答

2
' return employees where family name starts with "joe" 
query = From emp In db.Employees _ 
     Where emp.LastName.Substring(emp.LastName.LastIndexOf(" ") + 1) _ 
          .StartsWith("joe") _ 
     Select emp 

' return employees where middle name or family name starts with "joe" 
query = From emp In db.Employees _ 
     Where emp.LastName.StartsWith("joe") _ 
      OrElse emp.LastName.Contains(" joe") _ 
     Select emp 
3
query = From emp In db.Employees _ 
    Where emp.LastName.StartsWith("joe") _ 
    or Lastname.contains(" joe") _ 
    Select emp 
+4

解決了給定的問題,但如果中間名是瑪麗·喬·(瑪麗·喬·約翰遜)?中間名應該是一個單獨的字段。 – Wade73 2010-12-07 12:15:59

+0

是的,我真的沒有那種感覺。同意中間名應該是一個單獨的字段 – Matt 2010-12-07 12:17:47

相關問題