Mysql 子查询返回多行的SQL语句
我尝试使用以下SQL从mySQL查询一组数据:Mysql 子查询返回多行的SQL语句,mysql,sql,Mysql,Sql,我尝试使用以下SQL从mySQL查询一组数据: SELECT * FROM orders WHERE datediff((now()), (SELECT datepurchased FROM orders WHERE email = 'me@example.com')) <= 1 但问题是,我得到了一个错误,1242-Subquery返回了不止一行,因为语句selectdatepurchasefromrorders,其中email='1〕me@example.com'返回多行,这是完全
SELECT * FROM orders
WHERE datediff((now()), (SELECT datepurchased FROM orders WHERE email = 'me@example.com')) <= 1
但问题是,我得到了一个错误,1242-Subquery返回了不止一行,因为语句selectdatepurchasefromrorders,其中email='1〕me@example.com'返回多行,这是完全正确的
我想要的想法是从orders表中进行选择,以便当前时间和datepurchased字段之间的日期差您不需要子查询,只需在orders查询中输入两个where条件即可
我没有试过,但它似乎很简单。我想您只需要一个普通的SELECT,它带有一个WHERE子句,其中包含两个条件:
SELECT * FROM orders
WHERE email = 'me@example.com')
AND datediff(now(), datepurchased) <= 1
在这种情况下不需要子查询。简单地说:
SELECT *
FROM orders
WHERE email = 'me@example.com'
AND DATEDIFF(NOW(), datepurchased) <= 1;
我想我遗漏了什么,但你为什么不能这样做呢
SELECT * FROM orders
WHERE datediff(now(), datepurchased ) <= 1
and email = 'me@example.com'
你怎么了
SELECT *
FROM orders
WHERE datediff(now(), datepurchased) <= 1
AND email = 'me@example.com'
?有人请告诉我,为什么当柯克比的答案与当前的其他4个答案完全相同时,他们的答案被否决,而他们被否决了?@Joe Stefanelli-可能只是想确保我没有遗漏什么。我不喜欢无缘无故地投反对票,它把建设性批评的机会变成了近乎无用的东西。对于一个应该是关于学习和解决问题的网站来说,完全是适得其反的。。。。。不一定按那个顺序。@布赖恩:你在向唱诗班布道-
SELECT *
FROM orders
WHERE datediff(now(), datepurchased) <= 1
AND email = 'me@example.com'