wecisecode 1 tháng trước cách đây
mục cha
commit
5a9b2b8542

+ 15 - 2
odbctest/mql/basic/10basic/41.insert.mql

@@ -1,6 +1,19 @@
 
-insert into /test/foo (v_varchar, v_text, v_int, v_bigint, v_float, v_double, v_bool, v_set, v_list, v_map, v_blob)
- values ('1', '1', 1, 1, 1.1234567890123456, 1.1234567890123457, true, ["a"], ["a"], {"a":1.1}, "hello"  )
+insert into /test/foo (v_varchar, v_text, v_int, v_bigint, v_float, v_double, v_bool, v_set, v_list, v_map, v_blob, vtime)
+ values ('1', '1', 1, 1, 1.1234567890123456, 1.1234567890123457, true, ["a"], ["a"], {"a":1.1}, "hello", "1970-01-01 00:00:00.000001"  )
+;
+
+insert into /test/foo (v_varchar, v_text, v_int, v_bigint, v_float, v_double, v_bool, v_set, v_list, v_map, v_blob, vtime)
+ values ('1', '1', 1, 1, 1.1234567890123456, 1.1234567890123457, true, ["a"], ["a"], {"a":1.1}, "hello", "0001-01-01 00:00:00.000000"   )
+;
+
+update /test/foo set vtime='0001-01-03 00:00:00.000000' where v_varchar='1'
+;
+
+update /test/foo set vtime=? where v_varchar='1'
+/**
+params('1900-12-31 23:59:59.000001')
+**/
 ;
 
 insert into /test/foo (v_varchar, v_text, v_int, v_bigint, v_float, v_double, v_bool, v_set, v_list, v_map, v_blob)

+ 31 - 0
odbctest/mql/basic/10basic/50subquery.mql

@@ -0,0 +1,31 @@
+
+
+select * from (select * from group)
+/**
+output()
+match(fullname,"/admin")
+**/
+;
+
+
+select * from (select class,id,username,lft,rgt from ldap)
+/**
+output()
+match(username,"/")
+match(username,"admin")
+**/
+;
+
+select avg(lft) as a,avg(rgt) as b from(select class,id,username,lft,rgt from ldap)
+/**
+output()
+match(a,1.5,b,3.5)
+**/
+;
+
+select avg(x.lft) as a,avg(rgt) as b from(select class,id,username,lft,rgt from ldap) x
+/**
+output()
+match(a,1.5,b,3.5)
+**/
+;

+ 7 - 0
odbctest/mql/basic/10basic/999.relaxed.syntax.mql

@@ -12,3 +12,10 @@ select*from/test/001/**output()**/;
 delete from/test/001 with version;
 dropclass/test/001;
 
+
+selectavg(lft)as a,avg(rgt)as b from(selectclass,id,username,lft,rgt fromldap)
+/**
+output()
+match(a,1.5,b,3.5)
+**/
+;

+ 20 - 0
odbctest/mql/basic/24bucket_promdb/1094.subquery.mql

@@ -0,0 +1,20 @@
+
+
+-- SELECT id,prom.time('2024-01-01 09:09:09.090', '2024-01-03 19:19:19.191').find(name='test1').unit('sum','1d') FROM /test/bucketpromdb where id='bucketpromdb:wecisen1'
+-- /**
+-- output()
+-- matchcount(id, "bucketpromdb:wecisen1", "prom.1.2", 2880, 1)
+-- **/
+-- ;
+
+
+-- select id,prom.time('2024-01-02','2024-01-03') from (
+-- SELECT id,prom.time('2024-01-01 09:09:09.090', '2024-01-03 19:19:19.191').find(name='test1').unit('sum','1d') FROM /test/bucketpromdb where id='bucketpromdb:wecisen1'
+-- )
+-- /**
+-- output()
+-- matchcount(id, "bucketpromdb:wecisen1", "prom.1.2", 2880, 1)
+-- **/
+-- ;
+
+

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 6 - 0
odbctest/mql/uino/072.timestamp.mql


+ 8 - 0
odbctest/odbcmql/mqls_match.go

@@ -52,6 +52,10 @@ func MatchValues(rtn *odb.Result, ks []string, ms []any) (x int, matchingvalues
 										match = false
 										break
 									}
+									if n >= len(mv) {
+										match = false
+										break
+									}
 									matchingvalue = mv[n]
 								}
 							case string:
@@ -63,6 +67,10 @@ func MatchValues(rtn *odb.Result, ks []string, ms []any) (x int, matchingvalues
 										match = false
 										break
 									}
+									if n >= len(mv) {
+										match = false
+										break
+									}
 									matchingvalue = mv[n]
 								}
 							default: