我有一个 sqlite3 查询
SELECT DATETIME(ROUND(start_time / 1000), 'unixepoch') as Date FROM history
当我在dbbrowser中打开数据库时,( https:/sqlitebrowser.org。 )查询运行正常。
我现在尝试在bash脚本中运行该命令。
echo 'SELECT DATETIME(ROUND(start_time / 1000), 'unixepoch') as Date FROM history' | sqlite3 database.db
结果是一个错误,说明 没有这样的栏目unixepoch
我也试过
echo 'SELECT DATETIME(ROUND(start_time / 1000), 'unixepoch') FROM history' | sqlite3 database.db
我看了sqlite3的man页面,没有看到任何关于datetime的用法。
运行
echo 'SELECT start_time FROM history' | sqlite3 database.db
将返回13位的unix纪元值,即:1586107737232。
echo 'SELECT DATETIME(ROUND(start_time / 1000), 'unixepoch') as Date FROM history' | sqlite3 database.db
# ...^..........................................^.........^......................^
这是一个引号错误:你不能在一个单引号字符串中嵌入单引号。"unixepoch "周围的 "内 "引号被丢弃。
请这样做
echo "SELECT DATETIME(ROUND(start_time / 1000), 'unixepoch') as Date FROM history" | sqlite3 database.db
# ...^..........................................^.........^......................^