Javascript 无法确定如何仅显示具有相同值的表格数据

Javascript 无法确定如何仅显示具有相同值的表格数据,javascript,mysql,sql,node.js,Javascript,Mysql,Sql,Node.js,我正在使用nodejs、express、mysql和js。我有一个名为EVENT的表,我处理的一个查询是只显示表上具有相同开始时间的数据。基本上显示开始时间冲突的所有数据 我尝试了一系列不同的查询,但我无法使其正常工作 任何帮助都将不胜感激 db.query( 'select start_time FROM EVENT INNER JOIN select start_time FROM EVENT GROUP BY start_time HAVING COUNT(EV

我正在使用nodejs、express、mysql和js。我有一个名为EVENT的表,我处理的一个查询是只显示表上具有相同开始时间的数据。基本上显示开始时间冲突的所有数据

我尝试了一系列不同的查询,但我无法使其正常工作

任何帮助都将不胜感激

db.query(
    'select start_time 
    FROM EVENT 
    INNER JOIN select start_time FROM EVENT GROUP BY start_time HAVING COUNT(EVENT > 1)', 
    function (err, result) {
      if (err) {
        res.status(500).send({error: true, message: "Error Querying Database"});
        // throw err;
      }

你似乎想找出所有开始时间不唯一的记录。以下是一些按效率递减顺序排列的解决方案

在MySQL 8.0中,这可以通过窗口函数实现,如:

SELECT *
FROM (
    SELECT e.*, COUNT(*) OVER(PARTITION BY start_time) cnt FROM events
) x WHERE cnt > 1
在早期版本中,可以将EXISTS条件与相关子查询一起使用:

SELECT *
FROM events e
WHERE EXISTS (
    SELECT 1 
    FROM events e1 
    WHERE e1.start_time = e.start_time AND e1.id != e.id
)
这假设您有一个列,可用于消除具有相同开始时间(我称之为id)的记录的歧义。如果没有,则可以将IN条件与列出多次发生的开始时间的相关子查询一起使用,如:

SELECT *
FROM events
WHERE event_date IN (
    SELECT start_time FROM events GROUP BY start_time HAVING COUNT(*) > 1
)

请您向我们展示示例数据和预期输出,或者加入到内联视图中选择e.*从选择c.start\u时间从事件c组按c.start\u时间SUM1>1 d加入事件e在e.start\u时间d.start\u时间+10在这种情况下,问题是一个非常明显的重复,您应该投票关闭它,不要再回答了。@Shadow:好的,同意了…@spencer7593:是的,很好。。。我个人更喜欢内联视图而不是IN方法,并将其列为我的第三个选择!