{'Guid': 'VARCHAR(64) NOT NULL PRIMARY KEY', 'Package': 'VARCHAR(255) NOT NULL', 'SourceTable': 'VARCHAR(128) NOT NULL', 'SourceKey': 'VARCHAR(128) NOT NULL', 'TodoistId': 'VARCHAR(64) NOT NULL', 'TodoistType': "VARCHAR(32) NOT NULL DEFAULT 'task'", 'SyncStatus': "VARCHAR(32) DEFAULT 'synced'", 'SyncedAt': 'DATETIME DEFAULT CURRENT_TIMESTAMP', 'CreateTime': 'DATETIME DEFAULT CURRENT_TIMESTAMP', 'UpdateTime': 'DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'}
INSERT INTO def_todoist_sync
(Guid, Package, SourceTable, SourceKey,
TodoistId, TodoistType, SyncStatus, SyncedAt)
VALUES
('{guid}', '{package}', '{source_table}',
'{source_key}', '{todoist_id}',
'{todoist_type}', 'synced', NOW())
ON DUPLICATE KEY UPDATE
TodoistId = VALUES(TodoistId),
TodoistType = VALUES(TodoistType),
SyncStatus = VALUES(SyncStatus),
SyncedAt = NOW()
SELECT TodoistId FROM def_todoist_sync WHERE Package = '{package}'
AND SourceTable = '{source_table}'
AND SourceKey = '{source_key}'
LIMIT 1
SELECT SourceKey FROM def_todoist_sync WHERE Package = '{package}'
AND TodoistId = '{todoist_id}'
LIMIT 1
SELECT SourceTable, SourceKey,
TodoistId, TodoistType,
SyncStatus, SyncedAt
FROM def_todoist_sync WHERE Package = '{package}' ORDER BY SyncedAt DESC
SELECT SourceKey, TodoistId,
TodoistType, SyncStatus, SyncedAt
FROM def_todoist_sync WHERE Package = '{package}'
AND SourceTable = '{source_table}'
ORDER BY SyncedAt DESC