mysql 两个表中的信息怎么关联起来使用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 两个表中的信息怎么关联起来使用?相关的知识,希望对你有一定的参考价值。

举个例子
两个表a和b
a中有两列 姓名和电话 b中有两列 姓名和id号, 现在有id号,希望能通过操作同时显示id,姓名和电话
大概就是这样个问题,希望能把命令写上,我想照着操作下,谢谢。

  mysql 两个表中的信息关联起来使用方法:
  1、创建主表:
  create table UserInfo(
  UserID int identity(1,1) primary key, --递增主键
  UserAccounts varchar(20),
  UserName varchar(20),
  UserPwd varchar(10));
  2、创建附表(含外键)
  create table News(
  NewsID int identity(1,1) primarykey,
  UserID int,
  NewsTitle varchar( 50 ),
  NewsRelease varchar( 200 ),
  NewsReleaseTime datetime,
  FOREIGN KEY (UserID) REFERENCES UserInfo(UserID)); --外键约束
  如果附表已存在,但没外键,可采用以下方法:
  alter table profession add constraint fk_prov_id foreign key(prov_id) references province(prov_id) on update cascade on delete cascade;
参考技术A

    select a.*,b.* from a,b where a.姓名(字段名)=b.姓名(字段名) and id=id号(传值的id号)。

    select a.*,b.id from a left join b on a.姓名=b.姓名 where id=id号。

追问

i just want to say :"oh my god".

本回答被提问者采纳
参考技术B

sql多表查询


http://blog.csdn.net/mackzhaozhonggang/article/details/5557873这里有资料



select usersTable.myuser,usersTable.mypwd,

usersNote.useraddress,userphonenumber

--查询显示dbo.usersTable和dbo.usersNote表中的指定的内容

from dbo.usersTable,dbo.usersNote

--内联接两表

where usersTable.myuser=usersNote.username

--两表匹配的条件

select usersTable.myuser,usersTable.mypwd,

usersNote.useraddress,userphonenumber

--查询显示dbo.usersTable和dbo.usersNote表中的指定的内容

from dbo.usersTable,dbo.usersNote

--内联接两表

where usersTable.myuser=usersNote.username

--两表匹配的条件

参考技术C 找关联的键 , 如共用的学号、身份证号码、客户号等,选定主表、从表
select t.*,b.* from t left join b on t.a=b.a
参考技术D where 条件,表与表关联的条件

MySql 关联查询

1、内连接

将两张表中相同意义字段连接起来,返回结果是两个表中都存在的信息:

select * from TableA,TableB where TableA.字段c=TableB.字段c;

select * from TableA inner join TableB on TableA.字段c=TableB.字段c;

TableA.字段c=TableB.字段c是一种过滤条件。

2、左外连接

用第一张表中的每一条记录去匹配第二张表对应的记录,不管能不能匹配到记录,查询结果都显示第一个表的所有内容

select * from TableA left outer join TableB on TableA.字段c=TableB.字段c;

3、右外连接

用第二张表中的每一条记录去匹配第一张表对应的记录,不管能不能匹配到记录,查询结果都显示第二个表的所有内容

select * from TableA right outer join TableB on TableA.字段c=TableB.字段c;

4、全连接

左外连接与右外连接并集

select * from TableA left outer join TableB on TableA.字段c=TableB.字段c union select * from TableA right outer join TableB on TableA.字段c=TableB.字段c

5、关联子查询

将第一个查询的结果作为第二个查询的条件。

 

以上是关于mysql 两个表中的信息怎么关联起来使用?的主要内容,如果未能解决你的问题,请参考以下文章

spark怎么实现将mysql表中按照字段的优先级关联起来

连接与关联

sql server怎么把多个查询结果关联起来

在两个EXCEL表格中怎么把相关联的数据合并到一起

MySQL中如何在关联表中查询出其中一个外键不存在的数据?

查询一个表中所有数据并关联查询该表ID对应另一个表数据。