2016-08-19 3 views
0

みんな申し訳ありません私は自分の質問にタイトルを付ける方法を本当に知りません。英語ではあまり良くない。
ここに私の問題があります:正しい日付を取得する方法

私は従業員の誕生日を取りたいです。指定された月から
例:「8月」の月の日付14から20までのデータを取得したい

それぞれの出生年が異なるため、苦労しています。

ここに私が試したことがあります。しかし、私はインターネットを検索するが、単一の手掛かりを持っていない、動作しません。

Dim monthName As String = cb_month.Text 'from combobox that has list of months 
    Dim monthNumber = DateTime.ParseExact(monthName, "MMMM", CultureInfo.CurrentCulture).Month 
    Dim fromday = CInt(cb_dayfrom.Text) 
    Dim todate = cb_dayto.Text 
    ' Here's my query 
    query = "SELECT empID AS 'ID', Name, Cast(Birthday AS DATE) FROM empInfo BETWEEN '%" & monthNumber & "-" & fromday.ToString & "%' AND '%" & monthNumber & "-" & todate & "%'" 

とああ、もう一つの問題があることされています
ラインキャスト(DATE AS誕生日)リターンは時間と日付、どのように私はこれを取り除くのですか?
SQLで誕生日のデータ型は最終で

+0

は(https://www.google.mu/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact= [DATEPART()]を使用することを検討してください8&VED = 0ahUKEwjGn_uhi83OAhVD6RQKHf33AtsQFgggMAE&URL = HTTPS%3A%2F%2Fmsdn.microsoft.com%2Fen米国%2Flibrary%2Fms174420.aspx&USG = AFQjCNH0ItsqryYaVH9_8wpUmt-551qCEg&SIG2 = UP5GQEw6nj8i6a60fL1zAA&BVM = bv.129759880、d.d24)機能。 SQL文が正しくないようです。 –

+1

はい、それは何をすべきかです:いくつかの研究。以前は 'DatePart'について知りませんでしたが、今はそうしていますので、' DatePart'の使い方を知ることができます。 – jmcilhinney

答えて

0

です!私の問題への答えを見つけた。..

Dim monthNumber As Integer = DateTime.ParseExact(cb_month.Text, "MMMM", CultureInfo.CurrentCulture).Month 
    Dim fromdate As Integer = CInt(cb_dayfrom.Text) 
    Dim todate As Integer = CInt(cb_dayto.Text) 
    query = "SELECT empID AS 'ID', Name, CONVERT(VARCHAR(10),Birthday,101) FROM empInfo " & _ 
     "WHERE DATEPART (month, Birthday) = " & monthNumber & _ 
     " AND (DATEPART (day, Birthday) Between " & fromdate & " AND " & todate & ")" 
関連する問題