我目前有以下(简化)sql从主表中选择用户数据table1
。此查询仅选择自给定日期以来未登录的用户。由于登录表与主表是分开的,因此我使用子查询。这两个表通过用户标识列相关。这工作完美。从子查询中获取列
// sql to get all records that haven't logged in since date above
$sql = "SELECT t1.*
FROM table1 t1
WHERE '2016-08-01' > (SELECT MAX(t2.DateCol)
FROM table2 t2
WHERE t2.userId= t1.userId)";
我的问题是,有没有办法返回MAX(t2.DateCol)
的值? 我厌倦了这一点,但就是没有reconise列
$sql = "SELECT t1.*, MAX(t2.DateCol) ....
FYI:这个SQL被解析成一个自定义的PDO功能,所以没有必要发出警告的MySQL函数的不安全感。
见http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very -simple-sql-query – Strawberry
好吧,你必须警告有关PDO函数的insecirutues,当它们被用作mysql函数 –
的相同方式时,你似乎是mysql的新手;你得到什么错误?检查他们并告诉我们它是什么。请参阅http://php.net/manual/en/pdo.error-handling.php和http://php.net/manual/en/function.error-reporting.php并将其应用于您的代码。 –