Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 修改查询以仅返回在特定年份加入的用户_Mysql_Mysql Workbench - Fatal编程技术网

Mysql 修改查询以仅返回在特定年份加入的用户

Mysql 修改查询以仅返回在特定年份加入的用户,mysql,mysql-workbench,Mysql,Mysql Workbench,我正在为大学做一个练习,任何时候我进入比现在更远的地方,根据之前的查询,带解释的红色x不允许我继续 问题是 修改查询,使其仅返回2020年加入的用户。按用户加入日期列出用户 我试过的代码是: SELECT sname, fname, username, cast(datejoined as date) as datejoined from user Order by sname, datejoined; 我想我必须把整个日期改为一年,但我不知道怎么做——有人有什么建议吗??谢谢 您可以在

我正在为大学做一个练习,任何时候我进入比现在更远的地方,根据之前的查询,带解释的红色x不允许我继续

问题是

修改查询,使其仅返回2020年加入的用户。按用户加入日期列出用户

我试过的代码是:

SELECT sname, fname, username, 

cast(datejoined as date) as datejoined from user

Order by sname, datejoined;

我想我必须把整个日期改为一年,但我不知道怎么做——有人有什么建议吗??谢谢

您可以在MySQL中使用日期列的
年份

但是为什么要将其强制转换为DATE、另存为DATE或datetime,并且可以使用该列而不强制转换它呢

sname | fname |用户名| datejoined :---- | :---- | :------- | :--------- a | b | c | 2021-01-01
dbfiddle

您至少需要使用
WHERE
子句。您将在中找到有用的信息
CREATE TABLE user(sname varchar(50),fname varchar(50),username varchar(50),datejoined varchar(19))
INSERT INTO user VALUEs ('a','b','c','2021-01-01'),('a1','b1','c1','2020-01-01')
SELECT sname, fname, username,

cast(datejoined as date) as datejoined from user
HAVING YEAR(datejoined) = 2021
Order by sname, datejoined;
sname | fname | username | datejoined :---- | :---- | :------- | :--------- a | b | c | 2021-01-01