初学者学习sql加入mySQL

初学者学习sql加入mySQL,sql,Sql,我已经创建了3个表:dog、customer和owner。这是一个多对一的关系,许多狗拥有一个客户 CREATE TABLE dog ( DogID int(6) NOT NULL, DogName varchar(15), medicalID int (6), Gender character(1) check(gender in ('m', 'f')), Age int(2), Breed varchar(15), size character (1) check(size in ('s',

我已经创建了3个表:dog、customer和owner。这是一个多对一的关系,许多狗拥有一个客户

CREATE TABLE dog
(
DogID int(6) NOT NULL,
DogName varchar(15),
medicalID int (6),
Gender character(1) check(gender in ('m', 'f')),
Age int(2),
Breed varchar(15),
size character (1) check(size in ('s', 'm', 'l')),
primary key (DogID));

CREATE TABLE Owns
(
DogID int (6)primary key,
CustomerID int (6),
foreign key (CustomerID) references customer (CustomerID),
foreign key (DogID) references dog (DogID));

CREATE TABLE customer
(
CustomerID int(6) NOT NULL,
FirstName varchar(15),
Surname varchar(15),
Address varchar(225),
email varchar (30), 
TelNo varchar (15),
MobNo Varchar (15), 
EmergencyName varchar (40), 
EmergencyPhoneNo varchar(15),
primary key (CustomerID));
我已向查询,但未返回任何内容

select dog.dogName 
from dog, owns, customer
where owns.dogID = dog.dogId
  and customer.customerID = owns.customerID
  and customer.FirstName = "CustomersName";

您创建了表,现在需要插入数据

INSERT INTO dog(<fields>) VALUES(<values>);
插入到dog()值()中;

如果您已经成功创建了表,下一步就是将一些数据放入其中。否则,您将无法从查询中获得任何信息。您需要在dog和customer表中插入一条记录,并通过owns表将它们关联起来。在执行这3次插入之后,您应该能够连接它们的键并查询数据

例如:

insert into dog(DogID, DogName, medicalID, Gender, Age, Breed, Size) values ('111111', 'Spike', '111111', '12', 'Wolf', 'l' );

insert into customer ( CustomerID, FirstName, Surname, Address, email, TelNo, MobNo, EmergencyName, EmergencyPhoneNo ) values ( '222222', 'Abe', 'Lincoln', '123 Street', 'blah@blah.com', '8675309', '8675309', 'Bob', '8675309' );    

insert into owns ( DogID, CustomerID ) values ( '111111', '222222' );

select DogName from dog as d
join owns as o on o.DogID = d.DogID
join customer as c on c.CustomerId = o.CustomerID
where c.FirstName = 'Abe';

请注意,您的语法可能略有不同。我使用Oracle已经有一段时间了

(1)则没有满足查询条件的数据。尝试设置一个SQL小提琴。(2) 切勿在
from
子句中使用逗号。始终使用显式
join
语法。您实际要执行哪种join?内部连接或其他什么您正在使用的SQL?SQL Server、MySQL还是其他?