📜  SQLite语法(1)

📅  最后修改于: 2023-12-03 15:35:07.706000             🧑  作者: Mango

SQLite语法

SQLite是一种轻量级的关系型数据库,具有小巧、易用和高效的特点。SQLite的语法类似于其他SQL语法,但也有一些独特的特点。

基本语法

SQLite的基本语法包括SELECT、INSERT、UPDATE、DELETE等命令,这些命令可以用于操作表格。例如:

-- 创建表格
CREATE TABLE students (
  id INTEGER PRIMARY KEY,
  name TEXT,
  age INTEGER,
  gender TEXT
);

-- 插入数据
INSERT INTO students (name, age, gender) VALUES ('Tom', 18, 'M');
INSERT INTO students (name, age, gender) VALUES ('Lucy', 20, 'F');

-- 查询数据
SELECT * FROM students;

-- 更新数据
UPDATE students SET age = 19 WHERE name = 'Tom';

-- 删除数据
DELETE FROM students WHERE name = 'Lucy';
限制语句

SQLite也支持一些限制语句,包括WHERE、ORDER BY、GROUP BY等,这些语句可以用于筛选、排序和分组数据。例如:

-- 查询年龄大于18岁的学生
SELECT * FROM students WHERE age > 18;

-- 根据年龄升序排序
SELECT * FROM students ORDER BY age ASC;

-- 按性别分组
SELECT gender, COUNT(*) FROM students GROUP BY gender;
索引

SQLite支持索引,可以加速数据检索。通常可以在表格定义时创建索引,也可以随时在插入数据后创建索引。例如:

-- 创建索引
CREATE INDEX idx_name ON students (name);

-- 使用索引查询数据
SELECT * FROM students WHERE name = 'Tom';
外键

SQLite也支持外键,可以用来实现数据表之间的关系。要创建外键,需要首先创建外键约束,然后指定参照的主键。例如:

-- 创建表格,设置外键约束
CREATE TABLE teachers (
  id INTEGER PRIMARY KEY,
  name TEXT,
  student_id INTEGER,
  FOREIGN KEY(student_id) REFERENCES students(id)
);

-- 插入数据
INSERT INTO teachers (name, student_id) VALUES ('Jack', 1);

-- 查询数据(使用JOIN关键字)
SELECT teachers.name, students.name FROM teachers
LEFT JOIN students ON teachers.student_id = students.id;
总结

以上就是SQLite的基本语法。SQLite虽然是轻量级的数据库,但它仍然具有许多实用的功能。希望本文能够帮助您更好地理解SQLite的语法。