ProjectForStudy

 ลืมรหัสผ่าน
 ลงทะเบียน
ค้นหา
ดู: 479|ตอบกลับ: 3

[ถาม/ตอบ] การ query ข้อมูลจาก mysql ด้วยวันที่

[คัดลอกลิงก์]
  • อารมณ์วันนี้
    แฮปปี้
    2019-5-16 20:19
  • เช็คชื่อแล้ว: 18 วัน

    [LV.4]BeginnerIII

    1

    กระทู้

    33

    โพสต์

    51

    เครดิต

    BabyGhost

    Rank: 1

    เครดิต
    51
    Ticket
    45
    จิตพิสัย
    6

    คืออยากให้ข้อมูลที่แสดงใน listview อยู่ในช่วงวันที่ที่กำหนดไว้อ่ะครับ แต่ใช้ไม่ได้
    อันนี้คิดโค้ด ที่ใช้ดึงข้อมูลครับ วันที่ที่บันทึกใช้ format (yyyy-MM-dd)
    1. mysql = "SELECT * FROM packlist WHERE packlist_packer like '%" & txt_pk_search.Text & "%' AND packlist_date >= '%" & DateTimePicker1.Value & "%' AND packlist_date <= '%" & DateTimePicker2.Value & "%' ORDER BY packlist_id DESC "
    คัดลอกไปที่คลิปบอร์ด
    รบกวนหน่อยนะครับ

    ขอบคุณครับ

    ขออภัย! โพสต์นี้มีไฟล์แนบหรือรูปภาพที่ไม่ได้รับอนุญาตให้คุณเข้าถึง

    คุณจำเป็นต้อง ลงชื่อเข้าใช้ เพื่อดาวน์โหลดหรือดูไฟล์แนบนี้ คุณยังไม่มีบัญชีใช่ไหม? ลงทะเบียน

    x
  • อารมณ์วันนี้
    แฮปปี้
    เมื่อวาน 07:47
  • เช็คชื่อแล้ว: 248 วัน

    [LV.8]ConquerorI

    20

    กระทู้

    519

    โพสต์

    1637

    เครดิต

    HawkBrain

    Rank: 4

    เครดิต
    1637
    Ticket
    1125
    จิตพิสัย
    512

    Merciful MemberInstructor

    puklit โพสต์ 2018-8-18 09:08:45 | ดูโพสต์ทั้งหมด
    แก้ไขครั้งสุดท้ายโดย puklit เมื่อ 2018-8-18 09:24

    ผมแนะนำให้ใช้ Class CultureInfo ใน Namespace : System.Globalization เข้ามาช่วยเปลี่ยนรูปแบบวันที่ครับ
    เนื่องจาก format date ของเครื่องท่านอยู่ในรูปแบบ พ.ศ.และผมไม่แนะนำให้ใช้หลักการ +- 543เนื่องจากมีโอกาสจะพบบั๊กช่วงวันที 28 หรือ 29 เดือน กุมภาพันธ์สูง
    และท่านต้องมาคิดเผื่ออีกกรณีมีหลาย ๆ เครื่องที่ต้องใช้
    Application ที่ท่านสร้างขึ้นมาตรวจสอบอีกว่า เครื่องใหนเป็น พ.ศ. หรือ เครื่องใหน เป็น ค.ศ.

    1. Imports System.Globalization
    2. Imports System.Threading

    3. ' แปลงค่าวันที่ให้เป็น คศ ในรูปแบบ yyyy-MM-dd สำหรับ Sql server
    4.     Public Function _Date(_Get_Date As System.DateTime) As String

    5.         Dim _sql_day As String 'ส่งค่ากลับในรูปแบบข้อความ yyyy-MM-dd
    6.         Dim ci As New CultureInfo("en-US")
    7.         Thread.CurrentThread.CurrentCulture = ci
    8.         Dim _Day As System.DateTime = New System.DateTime(_Get_Date.Year, _Get_Date.Month, _Get_Date.Day, Thread.CurrentThread.CurrentCulture.Calendar)
    9.         _sql_day = _Day.ToString("yyyy-MM-dd")

    10.         Return _sql_day

    11.     End Function
    คัดลอกไปที่คลิปบอร์ด


    ลิ้งค์เกี่ยวกับ Cultureinfo
    https://docs.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo?view=netframework-4.7.2

    ส่วนคำสั่ง SQL การหาข้อมูลระหว่างวันก็ใช้ Between เข้ามาค้นหาเช่น
    1. mysql = "SELECT * FROM packlist
    2. WHERE (packlist_packer like '%" & txt_pk_search.Text & "%')
    3. AND (packlist_date BETWEEN _Date('"& DateTimePicker1.Value &"') AND _Date('"& DateTimePicker2.Value &"'))
    4. ORDER BY packlist_id DESC "
    คัดลอกไปที่คลิปบอร์ด


    ข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Between
    https://www.dofactory.com/sql/where-between

    ตัวอย่าง การใช้ Cultureinfo ที่ผมเขียนไว้


    ขออภัย! โพสต์นี้มีไฟล์แนบหรือรูปภาพที่ไม่ได้รับอนุญาตให้คุณเข้าถึง

    คุณจำเป็นต้อง ลงชื่อเข้าใช้ เพื่อดาวน์โหลดหรือดูไฟล์แนบนี้ คุณยังไม่มีบัญชีใช่ไหม? ลงทะเบียน

    x

    คะแนน

    จำนวนผู้เข้าร่วม 1Ticket +5 ย่อ เหตุผล
    vbpossible + 5 ถูกใจ

    ดูบันทึกคะแนน

  • อารมณ์วันนี้
    แฮปปี้
    2019-5-16 20:19
  • เช็คชื่อแล้ว: 18 วัน

    [LV.4]BeginnerIII

    1

    กระทู้

    33

    โพสต์

    51

    เครดิต

    BabyGhost

    Rank: 1

    เครดิต
    51
    Ticket
    45
    จิตพิสัย
    6
     เจ้าของ| oatjubb โพสต์ 2018-8-26 15:37:23 | ดูโพสต์ทั้งหมด
    puklit ตอบกลับเมื่อ 2018-8-18 09:08
    ผมแนะนำให้ใช้ Class CultureInfo ใน Namespace : System.Globalization เข้ามาช่ ...

    ขอบคุณครับผมม จะลองดูนะครับ
  • อารมณ์วันนี้
    แฮปปี้
    2019-5-16 12:36
  • เช็คชื่อแล้ว: 1 วัน

    [LV.1]NewBie

    0

    กระทู้

    20

    โพสต์

    6

    เครดิต

    BabyGhost

    Rank: 1

    เครดิต
    6
    Ticket
    6
    จิตพิสัย
    0
    phounakhone โพสต์ 2019-5-16 13:08:31 | ดูโพสต์ทั้งหมด
    thankyonaja
    ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | ลงทะเบียน

    รายละเอียดเครดิต

    ข้อความล้วน|อุปกรณ์พกพา|ประวัติการแบน|ProjectForStudy  

    GMT+7, 2019-5-24 03:55 , Processed in 0.060399 second(s), 38 queries .

    Powered by Discuz! X3.2 R20150609, Rev.38

    © 2001-2013 Comsenz Inc.

    ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้