SQL-JOIN语句创建重复条目

问题描述

我是SQL的新手,我遇到了麻烦。

我有3张桌子:

CREATE TABLE indexCodes 
{
   (indexNum VARCHAR(5) PRIMARY KEY,courseString VARCHAR(10),title VARCHAR(20)
}

CREATE TABLE userid
{
     (id  INT NOT NULL PRIMARY KEY AUTO_INCREMENT,email VARCHAR(255) NOT NULL,password VARCHAR(255) NOT NULL)
}

    CREATE TABLE snipes
{ 
      (snipeNumber  INT NOT NULL PRIMARY KEY AUTO_INCREMENT),FOREIGN KEY indexNum REFERENCES indexcodes(indexNum),FOREIGN KEY userID REFERENCES userid(id)
}

使用JOIN语句

SELECT  userid.id,userID.email,snipes.indexNum,indexcodes.courseString,== indexcodes.title
FROM userid JOIN
     snipes JOIN
     indexcodes ON indexcodes.indexNum = snipes.indexNum 

我遇到重复的条目。 例如,基于一个用户插入的索引代码将显示所有用户的索引

解决方法

尝试使用这两个选项

  1. GROUP BY子句

    SELECT userid.id,userID.email,snipes.indexNum,indexcodes.courseString,== indexcodes.title FROM userid JOIN片段 在indexcodes.indexNum = snipes.indexNum上加入索引代码GROUP BY userid.id

  2. DISTINCT

    选择DISTINCT userid.id,userID.email,snipes.indexNum,indexcodes.courseString,== indexcodes.title FROM userid JOIN片段 在indexcodes.indexNum = snipes.indexNum上加入索引代码

,

MySQL是唯一支持JOIN且没有相应的ON子句的数据库。它确实应该返回错误!

您缺少JOIN条条件:

SELECT userid.id,userID.email,snipes.indexNum,indexcodes.courseString,== indexcodes.title
FROM user
     snipes
     ON snipes.userid = user.id JOIN
     indexcodes
     ON indexcodes.indexNum = snipes.indexNum ;

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...