Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

डेटाबेस से समय का विश्लेषण कैसे करें

मान लें कि आप go-sql-driver/mysql . का उपयोग कर रहे हैं आप ड्राइवर से DATE और DATETIME को स्वचालित रूप से time.Time . पर स्कैन करने के लिए कह सकते हैं , parseTime=true . जोड़कर आपके कनेक्शन स्ट्रिंग के लिए।

देखें https://github.com/go-sql-driver/mysql# समय-समय पर समर्थन

उदाहरण कोड:

db, err := sql.Open("mysql", "root:@/?parseTime=true")
if err != nil {
    panic(err.Error()) // Just for example purpose. You should use proper error handling instead of panic
}
defer db.Close()

var myTime time.Time
rows, err := db.Query("SELECT current_timestamp()")

if rows.Next() {
    if err = rows.Scan(&myTime); err != nil {
        panic(err)
    }
}

fmt.Println(myTime)

ध्यान दें कि यह current_timestamp के साथ काम करता है लेकिन current_time . के साथ नहीं . यदि आपको current_time का उपयोग करना चाहिए आपको स्वयं विश्लेषण करना होगा।

आप इस तरह से कस्टम पार्सिंग करते हैं:

सबसे पहले, हम एक कस्टम प्रकार रैपिंग []byte परिभाषित करते हैं, जो स्वचालित रूप से समय मानों को पार्स कर देगा:

type rawTime []byte

func (t rawTime) Time() (time.Time, error) {
    return time.Parse("15:04:05", string(t))
}

और स्कैनिंग कोड में हम बस यही करते हैं:

var myTime rawTime
rows, err := db.Query("SELECT current_time()")

if rows.Next() {
    if err = rows.Scan(&myTime); err != nil {
        panic(err)
    }
}

fmt.Println(myTime.Time())



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. आवश्यक फ़ील्ड अनुपलब्ध परिणाम

  2. कमांड लाइन में ssh के माध्यम से दूरस्थ मशीन पर MySQL क्वेरी चलाएँ

  3. onbeforeprint() और onafterprint() गैर IE ब्राउज़र के बराबर

  4. गेटटेक्स्ट या डेटाबेस अनुवाद

  5. php में स्ट्रिंग को MySQL टाइमस्टैम्प प्रारूप में कनवर्ट करना