如何显示比特定人员SQL更老的人?

时间:2017-07-08 13:05:19

标签: xml subquery

我应该使用什么功能来显示所有比特定人更老的人。我表格中的DOB格式为19-JAN-88

select * from student
where 
order by firstname;

3 个答案:

答案 0 :(得分:1)

select * from student where DOB > ( select DOB from student where student_name='value')

我假设DOB数据类型是Date或其他,您可以使用以下:

select * from student where CONVERT( VARCHAR(30),DOB,105) > ( select CONVERT( VARCHAR(30),DOB,105) from student where student_name='value')

答案 1 :(得分:0)

您将格式化为什么类型的日期?仅仅因为有各种日期类型。 无论如何你可以获得一个年龄而不是一个约会,所以它使用的是int而不是约会吗?

您可以在SELECT语句中进行调整(而不是select *)

我们假设DATE是YYYY-MM-DD(当然可以是日期时间等)

日期(your_field_name)> (1988年1月19日)

答案 2 :(得分:-1)

如果您无法将dob字段更改为合理格式,则需要使用 str_to_date(your_dob_field,'%d-%b-%y')所以你会写

从学生中选择* str_to_date(your_dob_field,'%d-%b-%y')< str_to_date(dob_of_student_to_compare_to,'%d-%b-%y');