[TD-3086]<feature> tag support timestamp
This commit is contained in:
parent
78f303144a
commit
68e2be0330
|
@ -6791,7 +6791,7 @@ int32_t doCheckForCreateFromStable(SSqlObj* pSql, SSqlInfo* pInfo) {
|
|||
const int32_t STABLE_INDEX = 1;
|
||||
|
||||
STableMetaInfo* pStableMetaInfo = tscGetMetaInfo(pQueryInfo, STABLE_INDEX);
|
||||
|
||||
|
||||
// super table name, create table by using dst
|
||||
int32_t numOfTables = (int32_t) taosArrayGetSize(pCreateTable->childTableInfo);
|
||||
for(int32_t j = 0; j < numOfTables; ++j) {
|
||||
|
@ -6820,6 +6820,7 @@ int32_t doCheckForCreateFromStable(SSqlObj* pSql, SSqlInfo* pInfo) {
|
|||
|
||||
// too long tag values will return invalid sql, not be truncated automatically
|
||||
SSchema *pTagSchema = tscGetTableTagSchema(pStableMetaInfo->pTableMeta);
|
||||
STableComInfo tinfo = tscGetTableInfo(pStableMetaInfo->pTableMeta);
|
||||
STagData *pTag = &pCreateTableInfo->tagdata;
|
||||
|
||||
SKVRowBuilder kvRowBuilder = {0};
|
||||
|
@ -6869,8 +6870,12 @@ int32_t doCheckForCreateFromStable(SSqlObj* pSql, SSqlInfo* pInfo) {
|
|||
tdDestroyKVRowBuilder(&kvRowBuilder);
|
||||
return invalidOperationMsg(tscGetErrorMsgPayload(pCmd), msg3);
|
||||
}
|
||||
} else if (pSchema->type == TSDB_DATA_TYPE_TIMESTAMP) {
|
||||
pItem->pVar.i64 =
|
||||
convertTimePrecision(pItem->pVar.i64, TSDB_TIME_PRECISION_NANO, tinfo.precision);
|
||||
}
|
||||
|
||||
|
||||
ret = tVariantDump(&(pItem->pVar), tagVal, pSchema->type, true);
|
||||
|
||||
// check again after the convert since it may be converted from binary to nchar.
|
||||
|
@ -6915,7 +6920,11 @@ int32_t doCheckForCreateFromStable(SSqlObj* pSql, SSqlInfo* pInfo) {
|
|||
tdDestroyKVRowBuilder(&kvRowBuilder);
|
||||
return invalidOperationMsg(tscGetErrorMsgPayload(pCmd), msg3);
|
||||
}
|
||||
} else if (pSchema->type == TSDB_DATA_TYPE_TIMESTAMP) {
|
||||
pItem->pVar.i64 =
|
||||
convertTimePrecision(pItem->pVar.i64, TSDB_TIME_PRECISION_NANO, tinfo.precision);
|
||||
}
|
||||
|
||||
|
||||
ret = tVariantDump(&(pItem->pVar), tagVal, pSchema->type, true);
|
||||
|
||||
|
|
|
@ -16,106 +16,105 @@
|
|||
#ifndef TDENGINE_TTOKENDEF_H
|
||||
#define TDENGINE_TTOKENDEF_H
|
||||
|
||||
|
||||
#define TK_ID 1
|
||||
#define TK_BOOL 2
|
||||
#define TK_TINYINT 3
|
||||
#define TK_SMALLINT 4
|
||||
#define TK_INTEGER 5
|
||||
#define TK_BIGINT 6
|
||||
#define TK_FLOAT 7
|
||||
#define TK_DOUBLE 8
|
||||
#define TK_STRING 9
|
||||
#define TK_TIMESTAMP 10
|
||||
#define TK_BINARY 11
|
||||
#define TK_NCHAR 12
|
||||
#define TK_OR 13
|
||||
#define TK_AND 14
|
||||
#define TK_NOT 15
|
||||
#define TK_EQ 16
|
||||
#define TK_NE 17
|
||||
#define TK_ISNULL 18
|
||||
#define TK_NOTNULL 19
|
||||
#define TK_IS 20
|
||||
#define TK_LIKE 21
|
||||
#define TK_GLOB 22
|
||||
#define TK_BETWEEN 23
|
||||
#define TK_IN 24
|
||||
#define TK_GT 25
|
||||
#define TK_GE 26
|
||||
#define TK_LT 27
|
||||
#define TK_LE 28
|
||||
#define TK_BITAND 29
|
||||
#define TK_BITOR 30
|
||||
#define TK_LSHIFT 31
|
||||
#define TK_RSHIFT 32
|
||||
#define TK_PLUS 33
|
||||
#define TK_MINUS 34
|
||||
#define TK_DIVIDE 35
|
||||
#define TK_TIMES 36
|
||||
#define TK_STAR 37
|
||||
#define TK_SLASH 38
|
||||
#define TK_REM 39
|
||||
#define TK_CONCAT 40
|
||||
#define TK_UMINUS 41
|
||||
#define TK_UPLUS 42
|
||||
#define TK_BITNOT 43
|
||||
#define TK_SHOW 44
|
||||
#define TK_DATABASES 45
|
||||
#define TK_TOPICS 46
|
||||
#define TK_MNODES 47
|
||||
#define TK_DNODES 48
|
||||
#define TK_ACCOUNTS 49
|
||||
#define TK_USERS 50
|
||||
#define TK_MODULES 51
|
||||
#define TK_QUERIES 52
|
||||
#define TK_CONNECTIONS 53
|
||||
#define TK_STREAMS 54
|
||||
#define TK_VARIABLES 55
|
||||
#define TK_SCORES 56
|
||||
#define TK_GRANTS 57
|
||||
#define TK_VNODES 58
|
||||
#define TK_IPTOKEN 59
|
||||
#define TK_DOT 60
|
||||
#define TK_CREATE 61
|
||||
#define TK_TABLE 62
|
||||
#define TK_STABLE 63
|
||||
#define TK_DATABASE 64
|
||||
#define TK_TABLES 65
|
||||
#define TK_STABLES 66
|
||||
#define TK_VGROUPS 67
|
||||
#define TK_DROP 68
|
||||
#define TK_TOPIC 69
|
||||
#define TK_DNODE 70
|
||||
#define TK_USER 71
|
||||
#define TK_ACCOUNT 72
|
||||
#define TK_USE 73
|
||||
#define TK_DESCRIBE 74
|
||||
#define TK_ALTER 75
|
||||
#define TK_PASS 76
|
||||
#define TK_PRIVILEGE 77
|
||||
#define TK_LOCAL 78
|
||||
#define TK_IF 79
|
||||
#define TK_EXISTS 80
|
||||
#define TK_PPS 81
|
||||
#define TK_TSERIES 82
|
||||
#define TK_DBS 83
|
||||
#define TK_STORAGE 84
|
||||
#define TK_QTIME 85
|
||||
#define TK_CONNS 86
|
||||
#define TK_STATE 87
|
||||
#define TK_COMMA 88
|
||||
#define TK_KEEP 89
|
||||
#define TK_CACHE 90
|
||||
#define TK_REPLICA 91
|
||||
#define TK_QUORUM 92
|
||||
#define TK_DAYS 93
|
||||
#define TK_MINROWS 94
|
||||
#define TK_MAXROWS 95
|
||||
#define TK_BLOCKS 96
|
||||
#define TK_CTIME 97
|
||||
#define TK_WAL 98
|
||||
#define TK_FSYNC 99
|
||||
#define TK_ID 1
|
||||
#define TK_BOOL 2
|
||||
#define TK_TINYINT 3
|
||||
#define TK_SMALLINT 4
|
||||
#define TK_INTEGER 5
|
||||
#define TK_BIGINT 6
|
||||
#define TK_FLOAT 7
|
||||
#define TK_DOUBLE 8
|
||||
#define TK_STRING 9
|
||||
#define TK_TIMESTAMP 10
|
||||
#define TK_BINARY 11
|
||||
#define TK_NCHAR 12
|
||||
#define TK_OR 13
|
||||
#define TK_AND 14
|
||||
#define TK_NOT 15
|
||||
#define TK_EQ 16
|
||||
#define TK_NE 17
|
||||
#define TK_ISNULL 18
|
||||
#define TK_NOTNULL 19
|
||||
#define TK_IS 20
|
||||
#define TK_LIKE 21
|
||||
#define TK_GLOB 22
|
||||
#define TK_BETWEEN 23
|
||||
#define TK_IN 24
|
||||
#define TK_GT 25
|
||||
#define TK_GE 26
|
||||
#define TK_LT 27
|
||||
#define TK_LE 28
|
||||
#define TK_BITAND 29
|
||||
#define TK_BITOR 30
|
||||
#define TK_LSHIFT 31
|
||||
#define TK_RSHIFT 32
|
||||
#define TK_PLUS 33
|
||||
#define TK_MINUS 34
|
||||
#define TK_DIVIDE 35
|
||||
#define TK_TIMES 36
|
||||
#define TK_STAR 37
|
||||
#define TK_SLASH 38
|
||||
#define TK_REM 39
|
||||
#define TK_CONCAT 40
|
||||
#define TK_UMINUS 41
|
||||
#define TK_UPLUS 42
|
||||
#define TK_BITNOT 43
|
||||
#define TK_SHOW 44
|
||||
#define TK_DATABASES 45
|
||||
#define TK_TOPICS 46
|
||||
#define TK_MNODES 47
|
||||
#define TK_DNODES 48
|
||||
#define TK_ACCOUNTS 49
|
||||
#define TK_USERS 50
|
||||
#define TK_MODULES 51
|
||||
#define TK_QUERIES 52
|
||||
#define TK_CONNECTIONS 53
|
||||
#define TK_STREAMS 54
|
||||
#define TK_VARIABLES 55
|
||||
#define TK_SCORES 56
|
||||
#define TK_GRANTS 57
|
||||
#define TK_VNODES 58
|
||||
#define TK_IPTOKEN 59
|
||||
#define TK_DOT 60
|
||||
#define TK_CREATE 61
|
||||
#define TK_TABLE 62
|
||||
#define TK_STABLE 63
|
||||
#define TK_DATABASE 64
|
||||
#define TK_TABLES 65
|
||||
#define TK_STABLES 66
|
||||
#define TK_VGROUPS 67
|
||||
#define TK_DROP 68
|
||||
#define TK_TOPIC 69
|
||||
#define TK_DNODE 70
|
||||
#define TK_USER 71
|
||||
#define TK_ACCOUNT 72
|
||||
#define TK_USE 73
|
||||
#define TK_DESCRIBE 74
|
||||
#define TK_ALTER 75
|
||||
#define TK_PASS 76
|
||||
#define TK_PRIVILEGE 77
|
||||
#define TK_LOCAL 78
|
||||
#define TK_IF 79
|
||||
#define TK_EXISTS 80
|
||||
#define TK_PPS 81
|
||||
#define TK_TSERIES 82
|
||||
#define TK_DBS 83
|
||||
#define TK_STORAGE 84
|
||||
#define TK_QTIME 85
|
||||
#define TK_CONNS 86
|
||||
#define TK_STATE 87
|
||||
#define TK_COMMA 88
|
||||
#define TK_KEEP 89
|
||||
#define TK_CACHE 90
|
||||
#define TK_REPLICA 91
|
||||
#define TK_QUORUM 92
|
||||
#define TK_DAYS 93
|
||||
#define TK_MINROWS 94
|
||||
#define TK_MAXROWS 95
|
||||
#define TK_BLOCKS 96
|
||||
#define TK_CTIME 97
|
||||
#define TK_WAL 98
|
||||
#define TK_FSYNC 99
|
||||
#define TK_COMP 100
|
||||
#define TK_PRECISION 101
|
||||
#define TK_UPDATE 102
|
||||
|
@ -128,29 +127,29 @@
|
|||
#define TK_USING 109
|
||||
#define TK_AS 110
|
||||
#define TK_NULL 111
|
||||
#define TK_SELECT 112
|
||||
#define TK_UNION 113
|
||||
#define TK_ALL 114
|
||||
#define TK_DISTINCT 115
|
||||
#define TK_FROM 116
|
||||
#define TK_VARIABLE 117
|
||||
#define TK_INTERVAL 118
|
||||
#define TK_SESSION 119
|
||||
#define TK_STATE_WINDOW 120
|
||||
#define TK_FILL 121
|
||||
#define TK_SLIDING 122
|
||||
#define TK_ORDER 123
|
||||
#define TK_BY 124
|
||||
#define TK_ASC 125
|
||||
#define TK_DESC 126
|
||||
#define TK_GROUP 127
|
||||
#define TK_HAVING 128
|
||||
#define TK_LIMIT 129
|
||||
#define TK_OFFSET 130
|
||||
#define TK_SLIMIT 131
|
||||
#define TK_SOFFSET 132
|
||||
#define TK_WHERE 133
|
||||
#define TK_NOW 134
|
||||
#define TK_NOW 112
|
||||
#define TK_SELECT 113
|
||||
#define TK_UNION 114
|
||||
#define TK_ALL 115
|
||||
#define TK_DISTINCT 116
|
||||
#define TK_FROM 117
|
||||
#define TK_VARIABLE 118
|
||||
#define TK_INTERVAL 119
|
||||
#define TK_SESSION 120
|
||||
#define TK_STATE_WINDOW 121
|
||||
#define TK_FILL 122
|
||||
#define TK_SLIDING 123
|
||||
#define TK_ORDER 124
|
||||
#define TK_BY 125
|
||||
#define TK_ASC 126
|
||||
#define TK_DESC 127
|
||||
#define TK_GROUP 128
|
||||
#define TK_HAVING 129
|
||||
#define TK_LIMIT 130
|
||||
#define TK_OFFSET 131
|
||||
#define TK_SLIMIT 132
|
||||
#define TK_SOFFSET 133
|
||||
#define TK_WHERE 134
|
||||
#define TK_RESET 135
|
||||
#define TK_QUERY 136
|
||||
#define TK_SYNCDB 137
|
||||
|
@ -207,11 +206,6 @@
|
|||
#define TK_VALUES 188
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#define TK_SPACE 300
|
||||
#define TK_COMMENT 301
|
||||
#define TK_ILLEGAL 302
|
||||
|
|
3107
src/query/src/sql.c
3107
src/query/src/sql.c
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue