Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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
如何使用WHERE子句显示MySQL中的所有数据_Mysql_Sql_Database - Fatal编程技术网

如何使用WHERE子句显示MySQL中的所有数据

如何使用WHERE子句显示MySQL中的所有数据,mysql,sql,database,Mysql,Sql,Database,我想显示我列中的所有值,即使是空值 下面是我的代码,它显示包含null的所有列数据,但不显示最新日期 SELECT MEMB.LAST_M, MEMB.MEMB_N, PrintDate FROM MEMB INNER JOIN tblPrint ON MEMB.MEMB_N = tblPrint.MEMB_N 但是,此代码显示最新日期,但不显示所有列,甚至不显示空值 SELECT MEMB.LAST_M, MEMB.MEMB_N, M

我想显示我列中的所有值,即使是空值

下面是我的代码,它显示包含null的所有列数据,但不显示最新日期

 SELECT 
  MEMB.LAST_M,
  MEMB.MEMB_N,
  PrintDate
FROM
  MEMB 
  INNER JOIN tblPrint 
    ON MEMB.MEMB_N = tblPrint.MEMB_N
但是,此代码显示最新日期,但不显示所有列,甚至不显示空值

    SELECT 
  MEMB.LAST_M,
  MEMB.MEMB_N,
  MAX(PrintDate)
FROM
  MEMB 
  INNER JOIN tblPrint 
    ON MEMB.MEMB_N = tblPrint.MEMB_N 
 WHERE tblPrint.`PrintDate` IN (SELECT tblPrint.`PrintDate` FROM tblPrint) GROUP BY MEMB.`LAST_M`

您可能需要使用左联接而不是内联接。没有看到DB结构,我无法确定测试结果,但我以前也遇到过同样的问题。LEFT JOIN为我修复了它。

查询的问题是WHERE子句。您可以尝试删除它,然后得到空值

SELECT 
  MEMB.LAST_M,
  MEMB.MEMB_N,
  MAX(PrintDate)
FROM
  MEMB 
  INNER JOIN tblPrint 
    ON MEMB.MEMB_N = tblPrint.MEMB_N 
GROUP BY MEMB.LAST_M, MEMB.MEMB_N
在MySQL 8中实现了,因此现在可以在单元级查询中包含内联聚合。具体而言,您可以在原始查询中添加一个新列,以查找最新的\u日期:


嗨,这不会改变什么。IDK如何创建db结构,我现在无法向您显示任何这是一个冗余条件tblPrint.PrintDate在从tblPrint中选择tblPrint.PrintDate…还不如写1=1。我已经删除了它!感谢您注意我在MySQL中的queryA,下面是一条评论。而且MySQL没有表。对不起,忘记删除了。我在SQL Server中测试它,这就是为什么我将它放在临时表中的原因:
SELECT 
  m.LAST_M,
  m.MEMB_N,
  p.PrintDate,
  MAX(PrintDate) OVER(PARTITION BY m.MEMB_N) AS Latest_Date
FROM
  MEMB m
INNER JOIN tblPrint p
  ON m.MEMB_N = p.MEMB_N