我试着做一个查询,在这个查询中,试图记录每个赛季其他球员在同一个赛季获得的平均值,当进行查询时,它会向我发送这个错误,我正在使用mysql,这是我的查询和我的板
CREATE TABLE jugadores (
codigo int NOT NULL,
Nombre varchar(30) DEFAULT NULL,
Procedencia varchar(20) DEFAULT NULL,
Altura varchar(4) DEFAULT NULL,
Peso int DEFAULT NULL,
Posicion varchar(5) DEFAULT NULL,
Nombre_equipo varchar(20) DEFAULT NULL,
PRIMARY KEY (codigo),
FOREIGN KEY (Nombre_equipo) References equipos(Nombre)
)engine=innodb;
CREATE TABLE equipos (
Nombre varchar(20) NOT NULL,
Ciudad varchar(20) DEFAULT NULL,
Conferencia varchar(4) DEFAULT NULL,
Division varchar(9) DEFAULT NULL,
PRIMARY KEY (Nombre)
)engine=innodb;
CREATE TABLE jugador (
codigo int NOT NULL,
Nombre varchar(30) DEFAULT NULL,
Procedencia varchar(20) DEFAULT NULL,
Altura varchar(4) DEFAULT NULL,
Peso int DEFAULT NULL,
Posicion varchar(5) DEFAULT NULL,
PRIMARY KEY (codigo)
)engine=innodb;
CREATE TABLE IF NOT EXISTS Temporada (
idTemporada INT(11) NOT NULL,
Nombre VARCHAR(30) NOT NULL,
FechaInicio DATETIME NOT NULL,
FechaFin DATETIME NOT NULL,
PRIMARY KEY (idTemporada))
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS Temporada_Equipo_Jugador (
Id INT(11) NOT NULL,
Nombre_equipo varchar(20) DEFAULT NULL,
jugador_codigo INT(11) NOT NULL,
Temporada_idTemporada INT(11) NOT NULL,
PRIMARY KEY (Id),
FOREIGN KEY (Nombre_equipo) References equipos(Nombre),
foreign key (jugador_codigo) references jugador(codigo),
foreign key (Temporada_idTemporada) references Temporada(idTemporada));
insert into temporada values ((
select AVG(a.estadisticas)
from estadisticas a, jugador b
where a.nombre = b.codigo
group by b.id_jugador
));
这就是错误 column count doesn't match value count at row 1
1条答案
按热度按时间qf9go6mv1#
欢迎使用堆栈溢出。我在数据库代码中看到了一些需要解决的问题。
第一:回答你的问题。当你
INSERT
一行到一个表中,您必须为mysql提供一种方法来赋值,或者NULL
值的值。你的Temporada
表包含四列,它们都是声明的NOT NULL
没有任何默认值。这意味着mysql不能接受您的INSERT
除非您为所有列提供值,否则说明。你的
idTemporada
列应该这样声明,以便mysql为每一行提供一个唯一的值:然后应该使用类似这样的insert语句,其中提供一个数字和两个日期/时间值。
恐怕我对您的数据理解不够,无法告诉您从何处获取这些日期/时间值。
第二:你的
Nombre
接收一个数字,一个AVG()
. 因此,它应该被声明为一个数字,一个DOUBLE
,不是VARCHAR(30)
.第三,你的其他table也需要
AUTO_INCREMENT
在他们的id
价值观。请考虑我的意见,然后在你的代码工作,并问另一个问题,如果你仍然需要帮助。