一直以来人类的“理解”和“懂”,是一个很神奇和玄幻的事情。
由于计算机0、1的本质,让计算机“懂”是一个很难且很未知的课题~
然而,ChatGPT的诞生,打破了我们的认知,让人类处于既兴奋又恐惧的状态~
它竟然能有common sense,而且能“懂”你!!!
下面是以前经常拿来面试新同事的问题,今天拿来问问ChatGPT:
有2个数据库表: student (id, name, grade); student_score(student_id, course, score); 写mysql SQL,查询每个年级总分最高的学生
ChatGPT的回答:
=======================================
可以使用以下SQL语句来查询每个年级总分最高的学生:
SELECT s.grade, s.name, SUM(ss.score) AS total_score FROM student s INNER JOIN student_score ss ON s.id = ss.student_id GROUP BY s.grade, s.id HAVING total_score = ( SELECT MAX(total_score) FROM ( SELECT s.grade, SUM(ss.score) AS total_score FROM student s INNER JOIN student_score ss ON s.id = ss.student_id GROUP BY s.grade ) AS grade_total WHERE grade_total.grade = s.grade ) ORDER BY s.grade ASC
这个查询语句首先使用 INNER JOIN 将学生表和学生成绩表关联起来,然后按照年级和学生ID分组计算每个学生的总分数。然后,使用嵌套查询来找到每个年级的最高总分数,然后将结果与每个学生的总分数进行比较,找到每个年级中总分最高的学生。最后,按照年级升序排序,以便更好地查看结果。注意,如果有多个学生的总分相同并且都是最高的,那么这个查询将返回所有这些学生的记录。
=======================================
我了个去!惊呆了!
这个面试题里面隐含了很多隐含意思,人类看一眼能神奇的“理解”,大家也都习惯了,但是ChatGPT这个01崽竟然也“懂”了!!
这个老六怕我看不懂它给的SQL,还贴心的给出了解释。
为了人类的尊严,我确实看了好几遍给的代码(心想一个01崽总归会有点糊涂吧),但好像确实没啥问题~ ~ 我开始有点糊涂了~~
最近排到文心一言的测试,也问问同样的问题,看看国产的01崽怎么样。虽然内心早有预期,但还是没有比较就没有伤害~