我们本次测试的方向是题目,使用Baidu Comate智能代码助手出一些MySQL的题目,看看情况如何。
问题1:
我正在学习MySQL,当前基本掌握了MySQL的操作,你能出一些题目让我测评一下我的学习情况吗?
返回结果:
先是给了思考过程,后来给了参考资料,这个参考资料是CSDN平台的博主文章。
当然,我很乐意为您出一些MySQL的题目来测评您的学习情况。以下是五道题目,每道题目都附有解答,以帮助您评估自己的知识掌握程度。
students
的数据表,包含以下字段:id
(主键,自增)、name
(学生姓名)、age
(学生年龄)、gender
(学生性别)。CREATE TABLE students ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, age INT, gender VARCHAR(10) );
John, 20, Male
、Jane, 22, Female
、Bob, 19, Male
。INSERT INTO students (name, age, gender) VALUES ('John', 20, 'Male'), ('Jane', 22, 'Female'), ('Bob', 19, 'Male');
SELECT name FROM students WHERE age > 20;
SELECT name, age FROM students;
SELECT name, age FROM students ORDER BY age ASC LIMIT 1;
SELECT COUNT(*) FROM students;
SELECT name FROM students WHERE gender = 'Male';
SELECT name FROM students WHERE age BETWEEN 19 AND 21;
courses
表,包含student_id
和course_id
字段)。
SELECT s.name FROM students s LEFT JOIN courses c ON s.id = c.student_id WHERE c.student_id IS NULL;
courses
表,包含course_id
和course_name
字段,查询每个学生及其选修的课程名称。
SELECT s.name, c.course_name FROM students s JOIN courses c ON s.id = c.student_id;
SELECT s.name FROM students s JOIN ( SELECT student_id FROM courses GROUP BY student_id HAVING COUNT(course_id) > 1 ) c ON s.id = c.student_id GROUP BY s.id HAVING COUNT(DISTINCT c.course_id) > 1;
SELECT name FROM students WHERE id IN ( SELECT student_id FROM courses WHERE course_name = 'Math' );
SELECT course_name FROM courses WHERE student_id NOT IN ( SELECT DISTINCT student_id FROM courses );
这些题目涵盖了MySQL的基本操作,包括数据表创建、插入、查询、聚合、条件查询、连接查询和子查询等。希望这些题目能帮助您评估自己的MySQL学习情况。
这里出了5个题目,到了子查询停止的,后面的存储过程,触发器什么的都没有提问,问的也就是初级的掌握情况了,还是比较听话的,对应的题目也不是很难,很适合初学者。