mysql - 在下刚入门sql 关于sql的语法询问
本文介绍了mysql - 在下刚入门sql 关于sql的语法询问的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
如下面的表table:
Id Name Class Count Date
1 苹果 水果 10 2011-7-1
1 桔子 水果 20 2011-7-2
1 香蕉 水果 15 2011-7-3
2 白菜 蔬菜 12 2011-7-1
2 青菜 蔬菜 19 2011-7-2
如果想要得到下面的结果:(Id唯一,Date选最近的一次)
1 香蕉 水果 15 2011-7-3
2 青菜 蔬菜 19 2011-7-2
正确的SQL语句是:
SELECT Id, Name, Class, Count, Date
FROM table t
WHERE (NOT EXISTS
(SELECT Id, Name, Class, Count, Date FROM table
WHERE Id = t.Id AND Date > t.Date))
那么 我想请教一下这里的Id 和t.Id Date 和 t.Date 是什么意思?
解决方案
id是给出条件中的id字段,t是给这张表定义的别名,
t.id是t表中的id字段,
t.id Date不存在的,中间有个AND,这里存在前面查询出来的数据形成一个数据层,这个临时数据层中的字段再和t中的date字段比较
t.Date是t表中的date字段
这篇关于mysql - 在下刚入门sql 关于sql的语法询问的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文