SQLite Select 语句(http://www.w3cschool.cc/sqlite/sqlite-select.html)
来源:互联网 发布:stussy靠谱的淘宝店 编辑:程序博客网 时间:2024/06/10 07:23
SQLite Select 语句
SQLite 的 SELECT 语句用于从 SQLite 数据库表中获取数据,以结果表的形式返回数据。这些结果表也被称为结果集。
语法
SQLite 的 SELECT 语句的基本语法如下:
SELECT column1, column2, columnN FROM table_name;
在这里,column1, column2...是表的字段,他们的值即是您要获取的。如果您想获取所有可用的字段,那么可以使用下面的语法:
SELECT * FROM table_name;
实例
假设 COMPANY 表有以下记录:
ID NAME AGE ADDRESS SALARY---------- ---------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
下面是一个实例,使用 SELECT 语句获取并显示所有这些记录。在这里,前三个命令被用来设置正确格式化的输出。
sqlite>.header onsqlite>.mode columnsqlite> SELECT * FROM COMPANY;
最后,将得到以下的结果:
ID NAME AGE ADDRESS SALARY---------- ---------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
如果只想获取 COMPANY 表中指定的字段,则使用下面的查询:
sqlite> SELECT ID, NAME, SALARY FROM COMPANY;
上面的查询会产生以下结果:
ID NAME SALARY---------- ---------- ----------1 Paul 20000.02 Allen 15000.03 Teddy 20000.04 Mark 65000.05 David 85000.06 Kim 45000.07 James 10000.0
设置输出列的宽度
有时,由于要显示的列的默认宽度导致 .mode column,这种情况下,输出被截断。此时,您可以使用 .width num, num.... 命令设置显示列的宽度,如下所示:
sqlite>.width 10, 20, 10sqlite>SELECT * FROM COMPANY;
上面的 .width 命令设置第一列的宽度为 10,第二列的宽度为 20,第三列的宽度为 10。因此上述 SELECT 语句将得到以下结果:
ID NAME AGE ADDRESS SALARY---------- -------------------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
Schema 信息
因为所有的点命令只在 SQLite 提示符中可用,所以当您进行带有 SQLite 的编程时,您要使用下面的带有 sqlite_master 表的 SELECT 语句来列出所有在数据库中创建的表:
sqlite> SELECT tbl_name FROM sqlite_master WHERE type = 'table';
假设在 testDB.db 中已经存在唯一的 COMPANY 表,则将产生以下结果:
tbl_name----------COMPANY
您可以列出关于 COMPANY 表的完整信息,如下所示:
sqlite> SELECT sql FROM sqlite_master WHERE type = 'table' AND tbl_name = 'COMPANY';
假设在 testDB.db 中已经存在唯一的 COMPANY 表,则将产生以下结果:
CREATE TABLE COMPANY( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL)
0 0
- SQLite Select 语句(http://www.w3cschool.cc/sqlite/sqlite-select.html)
- SQLite 简介(http://www.w3cschool.cc/sqlite/sqlite-intro.html)
- SQLite 安装(http://www.w3cschool.cc/sqlite/sqlite-installation.html)
- SQLite 命令(http://www.w3cschool.cc/sqlite/sqlite-commands.html)
- SQLite 语法(http://www.w3cschool.cc/sqlite/sqlite-syntax.html)
- SQLite 表达式(http://www.w3cschool.cc/sqlite/sqlite-expressions.html)
- SQLite Insert 语句(http://www.w3cschool.cc/sqlite/sqlite-insert.html)
- SQLite Update 语句(http://www.w3cschool.cc/sqlite/sqlite-update.html)
- 01.SQLite 教程(http://www.w3cschool.cc/sqlite/sqlite-tutorial.html)
- SQLite 数据类型(http://www.w3cschool.cc/sqlite/sqlite-data-types.html)
- SQLite 创建数据库(http://www.w3cschool.cc/sqlite/sqlite-create-database.html)
- SQLite 附加数据库(http://www.w3cschool.cc/sqlite/sqlite-attach-database.html)
- SQLite 分离数据库(http://www.w3cschool.cc/sqlite/sqlite-detach-database.html)
- SQLite 创建表(http://www.w3cschool.cc/sqlite/sqlite-create-table.html)
- SQLite 删除表(http://www.w3cschool.cc/sqlite/sqlite-drop-table.html)
- SQLite 运算符(http://www.w3cschool.cc/sqlite/sqlite-operators.html)
- SQLite Where 子句(http://www.w3cschool.cc/sqlite/sqlite-where-clause.html)
- SQLite AND/OR 运算符(http://www.w3cschool.cc/sqlite/sqlite-and-or-clauses.html)
- SQLite Insert 语句(http://www.w3cschool.cc/sqlite/sqlite-insert.html)
- 黑马程序员—java基础学习--Map集合、Collections,Arrays工具类
- LINUX总结第16篇:Linux中的lo回环接口详细介绍
- .NET(C#): 多种输出字节数组的方法
- Matlab混合编程中编译器设置问题
- SQLite Select 语句(http://www.w3cschool.cc/sqlite/sqlite-select.html)
- SQLite 运算符(http://www.w3cschool.cc/sqlite/sqlite-operators.html)
- 在Android平台上利用opencv进行图像处理之边缘检测、灰度变换、缩小
- Sass进阶
- Ksvd算法
- cocos2d-x项目中含CocoStudio移植Android时Android.mk的内容
- SQLite 表达式(http://www.w3cschool.cc/sqlite/sqlite-expressions.html)
- 5Foundation Kit 字典NSDictionary
- 用C++11的std::async代替线程的创建