题目
Mysql中表student_table(id,name,birth,sex),插入如下记录:
('1001' , ' ' , '2000-01-01' , '男');
('1002' , null , '2000-12-21' , '男');
('1003' , NULL , '2000-05-20' , '男');
('1004' , '张三' , '2000-08-06' , '男');
('1005' , '李四' , '2001-12-01' , '女');
执行 select count(name) from student_table 的结果是(3)?
思路:
count()函数有两种使用方式:1、使用count(*)对表中的行数进行计数,此种用法不忽略null值;2、使用count(column)对特定列中具有值的行进行计数,此种用法忽略null值。
常见是SQL语句
当涉及到SQL(结构化查询语言)时,有一些基本的语句用于执行各种数据库操作。以下是一些常见的SQL语句:
1. **创建表(CREATE TABLE):**
```sql
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
grade VARCHAR(10)
);
```
2. **插入数据(INSERT INTO):**
```sql
INSERT INTO students (id, name, age, grade)
VALUES (1, 'Alice', 20, 'A');
```
3. **查询数据(SELECT):**
```sql
SELECT * FROM students WHERE grade = 'A';
```
4. **更新数据(UPDATE):**
```sql
UPDATE students SET age = 21 WHERE id = 1;
```
5. **删除数据(DELETE):**
```sql
DELETE FROM students WHERE id = 1;
```
6. **过滤和排序(WHERE和ORDER BY):**
```sql
SELECT * FROM students WHERE age > 18 ORDER BY age DESC;
```
7. **聚合函数(COUNT、SUM、AVG、MAX、MIN):**
```sql
SELECT COUNT(*) FROM students;
SELECT AVG(age) FROM students WHERE grade = 'A';
```
8. **连接表(JOIN):**
```sql
SELECT students.id, students.name, grades.grade
FROM students
INNER JOIN grades ON students.id = grades.student_id;
```
9. **创建索引(CREATE INDEX):**
```sql
CREATE INDEX idx_students_name ON students(name);
```
10. **事务(BEGIN TRANSACTION、COMMIT、ROLLBACK):**
```sql
BEGIN TRANSACTION;
-- 执行一系列操作
COMMIT;
-- 或者 ROLLBACK,如果需要撤销之前的操作
```
这些是SQL中的一些基本语句,涵盖了表的创建、数据的插入、查询、更新和删除,以及一些高级的操作,如过滤、排序、聚合函数、连接表等。实际应用中,这些语句可以按需组合,以执行各种数据库操作。不同的数据库系统可能有些许差异,但基本语法结构大致相似。