feat(ScanRows): 新增 scanRows 转map数组
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
//_ "github.com/taosdata/driver-go/v3/taosWS"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
@@ -195,3 +196,47 @@ func TestScanRows(t *testing.T) {
|
||||
//marshal, _ := json.MarshalIndent(sdArray, "", " ")
|
||||
//fmt.Println(len(sdArray), string(marshal))
|
||||
}
|
||||
|
||||
func TestScanRowsToMap(t *testing.T) {
|
||||
/*
|
||||
文档参考: https://docs.taosdata.com/reference/connector/go/#websocket-%E8%BF%9E%E6%8E%A5
|
||||
|
||||
go get github.com/taosdata/driver-go/v3
|
||||
|
||||
import _ "github.com/taosdata/driver-go/v3/taosWS"
|
||||
|
||||
超级表创建
|
||||
CREATE STABLE `super_dev` (`ts` TIMESTAMP , `app_sn` VARCHAR(500) , `ct` INT ) TAGS (`dev_id` VARCHAR(50), `dev_type` VARCHAR(50))
|
||||
|
||||
批量插入
|
||||
INSERT INTO
|
||||
`dev_SN001` USING `super_dev` (`dev_id`,`dev_type`) TAGS ('SN001','模拟设备') (`ts`,`app_sn`,`ct`)
|
||||
VALUES ('2024-09-18T16:22:17+08:00','a0001',1),('2024-09-18T16:22:18+08:00','a0002',2)
|
||||
`dev_SN002` USING `super_dev` (`dev_id`,`dev_type`) TAGS ('SN002','模拟设备') (`ts`,`app_sn`,`ct`)
|
||||
VALUES ('2024-09-18T16:22:17+08:00','a0003',3)
|
||||
|
||||
*/
|
||||
|
||||
var taosUri = "root:taosdata@localhost:6041/test"
|
||||
db, err := sql.Open("taosWS", taosUri)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
rows, err := db.Query("select * from super_dev order by ts desc limit 100")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer func() { _ = rows.Close() }()
|
||||
|
||||
tdMapper := NewMapper()
|
||||
|
||||
toMap, err := tdMapper.ScanRowsToMap(rows)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
indent, _ := json.MarshalIndent(toMap, "", " ")
|
||||
fmt.Println(string(indent))
|
||||
fmt.Println("len:", len(toMap))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user