我想在SQLite的表中检索列的名称和行数。 有可能这样做是一个命令吗?
SELECT COUNT(*) FROM tablename
和
PRAGMA table_info(tablename))
答案 0 :(得分:2)
PRAGMA是一个单独的命令,而不是(子)查询,不能与其他SQL语句结合使用。
答案 1 :(得分:0)
可接受的答案是正确的,但是现在已经过时了,因为SQLite 3.16.0可以使用PRAGMA functions
所以您现在可以写:
SELECT * FROM pragma_table_info('tablename') JOIN (SELECT COUNT(*) FROM tablename);
或者如果您只需要名称:
SELECT name, rowcount FROM pragma_table_info('tablename') JOIN (SELECT COUNT(*) AS rowcount FROM tablename);
(已在SQLite 3.25.2中进行了测试)
使用它需要您自担风险:
此功能是实验性的,随时可能更改。如果PRAGMAs功能的表值函数得到正式支持,将提供进一步的文档。