1. 创建表:
CREATE TABLE students (
student_id SERIAL PRIMARY KEY,
name VARCHAR(100),
age INT,
grade CHAR(1)
);
2. 插入数据:
INSERT INTO students (name, age, grade) VALUES
('Alice', 20, 'A'),
('Bob', 22, 'B'),
('Charlie', 21, 'C');
3. 查询数据:
-- 查询所有学生的信息
SELECT * FROM students;
-- 查询年龄在 21 岁以上的学生
SELECT * FROM students WHERE age > 21;
-- 按成绩排序查询学生
SELECT * FROM students ORDER BY grade;
4. 更新数据:
-- 将学生 Bob 的年龄更新为 23 岁
UPDATE students SET age = 23 WHERE name = 'Bob';
5. 删除数据:
-- 删除成绩为 'C' 的学生
DELETE FROM students WHERE grade = 'C';
6. 创建索引:
-- 在 name 列上创建 B-树索引
CREATE INDEX idx_students_name ON students USING btree (name);
7. 使用 JOIN 进行查询:
-- 创建另一个表存储课程信息
CREATE TABLE courses (
course_id SERIAL PRIMARY KEY,
course_name VARCHAR(100)
);
-- 插入一些课程数据
INSERT INTO courses (course_name) VALUES
('Mathematics'),
('English'),
('Physics');
-- 查询学生和他们所选的课程
SELECT students.name, courses.course_name
FROM students
LEFT JOIN courses ON students.student_id = courses.course_id;
这只是一些基本示例,实际的数据库操作可能更加复杂,取决于你的数据模型和查询需求。
转载请注明出处:http://www.zyzy.cn/article/detail/8946/PostgreSQL