草庐IT

年龄组

全部标签

mysql从dob查询年龄

我的MySQL数据库以yyyy-mm-dd格式存储出生日期,我如何查询数据库-不使用php代码-以显示现在x年内出生的人的结果,和/或,谁你几岁了?表叫users,列叫dob。我花了一段时间查看MySQL手册,但我无法准确地了解如何形成我的查询。到目前为止,我选择了select*fromuserswheredob...但我认为这不是正确的方法。 最佳答案 使用INTERVAL命令。SELECT*fromuserswheredob>=(CURDATE()-INTERVAL18YEAR)这将返回所有18岁以下的用户。

MySQL生成年龄金字塔

如何编写适合生成年龄金字塔的查询,如下所示:我有一个表,其中包含一个包含他们生日的DATE字段和一个包含性别的BOOL字段(男=0,女=1)。任一字段都可以为NULL。我似乎无法弄清楚如何处理生日并将它们分成10年一组。编辑:理想情况下,X轴应该是百分比而不是数千:) 最佳答案 SELECTFLOOR((EXTRACT(YEARFROMFROM_DAYS(DATEDIFF(NOW(),birthday)))-4)/10)ASage,gender,COUNT(*)FROMmytableGROUPBYage,gender-1在age中表

php - 从生日日期列表到每个年龄段的总用户数组

我想了解实现此目的的最有效方法:我有一个MySQL表,其中包含我的用户信息,包括生日(YYYY/MM/DD)。我的目标是检索一个数组(php),其中包含从10岁到60岁的每个年龄段的用户总数。我可以只查询所有用户,将生日传递给我编写的生日到年龄php函数,然后用总计填充一个数组。但我想知道是否有一种方法可以构建一个sql查询来为我完成这项工作? 最佳答案 您应该能够对行进行分组:SELECTFLOOR(DATEDIFF(NOW(),`birthday`)/365)AS'Age',COUNT(*)FROM`users`WHEREFLO

mysql - sql查找年龄最大的学生

SELECTs.sid,s.sname,COUNT(s.age)ASageFROMstudentsINNERJOINenrolledeONs.sid=e.sidINNERJOINclasscONe.ccode=c.ccodeINNERJOINtutortONc.tid=t.tidWHEREs.programme='CIS'ANDt.tname='KathyBond'GROUPBYs,sid,s.snameORDERBYCOUNT(s.age)DESCLIMIT1;我需要找到在KathyBond的类(class)注册的年龄最大的CIS学生。这是我到目前为止所得到的,它说它无法识别订购运算

mysql - 需要在 1 个结果中找到电影发行时年龄最大的 Actor 的年龄

所以我有两个具有多个关系的表表格中的相关信息人:Id|Name|Birthyear电影:ID|Name|Releaseyear电影Actor:MovieID|ActorID查询,我试过:SELECTmovie.nameASMovie,person.name,movie.releaseyear-person.birthyearASAgeFROMmovie_actorINNERJOINmovieONmovie.id=movie_actor.movieidINNERJOINpersonONperson.id=movie_actor.actorID这显示了电影和Actor的名字,以及电影上映那

mysql - 如何选择年龄范围内的人

这个问题在这里已经有了答案:Mysql:Selectalldatabetweentwodates(7个答案)SQLSelectquerythatreturnsarange[duplicate](4个答案)关闭8年前。我已经尝试了所有其他问题/解决方案,但没有答案。所以这里是:我需要SELECT*FROMpeopleWHERE(dob是18到40)但我的DOB存储为DATE类型YYYY-MM-DD例如需要选择18到40岁之间的人!

mysql - 如何根据特定年份显示年龄?

我正在尝试根据特定的年龄排名显示年龄。这是demo:CREATETABLEclients(date_birthdate,date_anniversarydate);INSERTINTOclients(date_birth,date_anniversary)VALUES('1991-01-04',NULL),('1992-01-05',NULL),('1993-01-06',NULL),('1994-01-07',NULL),('1995-01-08',NULL),('1996-01-09',NULL),('1997-01-10',NULL),('1998-01-11',NULL),('

MySQL - 获取年龄和两个日期之间的天数

我正在尝试查询一个巨大的数据库(大约2000万条记录)以获取一些数据。这是我现在正在处理的查询。SELECTa.user_id,b.last_name,b.first_name,c.birth_dateFROMusersaINNERJOINusers_signupbONa.user_ida=b.user_idINNERJOINusers_personalcONa.user_ida=c.user_idINNERJOIN(SELECTdistinctd.a.user_idFROMusers_signupdWHEREd.join_date>='2013-01-01'andd.join_dat

php - 在 MySQL 中从 DOB 获取年龄

我正在尝试在个人资料页面中显示我的成员(member)年龄。在php文件中,我刚刚添加了这段代码来显示用户的生日:$data=$db->super_query("SELECTdobFROMdle_users");$tpl->set("{bdate}",$data['dob']);在个人资料页面我有这个结果:1364-07-09它是波斯语的日期:yyyy-mm-dd现在我需要向成员(member)显示年龄,我在谷歌和这个网站上进行了搜索,我找到了一些答案和提示,但对我来说不起作用!我不知道为什么。如何显示年龄?:( 最佳答案 您可以使

mysql - [1、2、3] 岁与 1 岁和 3 岁之间的年龄

我在age列上有一个InnoDB表和一个索引,就像这样CREATETABLEPerson(....ageint(11)notnull;key(age);....)engine=InnoDB;我只想知道这些查询背后的真实情况:SELECT*FROMPersonWHEREageIN[1,2,3];和SELECT*FROMPersonWHEREageBETWEEN1AND3;据我所知,第一个MySQL将使用列age上的索引,而第二个不能使用。是吗?哪个对性能更好? 最佳答案 两个查询都将使用索引。查询A将转换为:select*frompe