首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用sql和php连接两张表

如何用sql和php连接两张表
EN

Stack Overflow用户
提问于 2010-08-01 05:59:28
回答 1查看 7.2K关注 0票数 1

我对sql和php是个新手,所以我需要一些帮助。我创建了两个表,我想建立一个“一对多的关系”,但是我不知道如何通过php文件提供数据。下面是一些代码:

代码语言:javascript
复制
   CREATE TABLE `details` (
  `details_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(30) NOT NULL,
  `latitude` double NOT NULL,
  `longitude` double NOT NULL,
  `mytext` varchar(60) NOT NULL,
  `description` varchar(600) NOT NULL,
  `city_details` int(11) NOT NULL,
  PRIMARY KEY (`details_id`),
  FOREIGN KEY (`city_details`) REFERENCES city(`city_id`)
  on update cascade
);

CREATE TABLE  `city` (
  `city_id` int(11) NOT NULL AUTO_INCREMENT,
   `cityName` varchar(30) NOT NULL,
  PRIMARY KEY (`city_id`)
);

所以我想写一个cityName,然后能够给出城市不同地方的一些数据。我如何创建一个php文件,这样我只需要给出城市的名称(表城市),然后为城市中的多个位置写东西(表的详细信息)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-01 06:10:46

代码语言:javascript
复制
$sql="SELECT * FROM `details` as d INNER JOIN `city` as c ON d.city_details=c.city_id;";

如果要查找城市名称,可以使用以下代码

代码语言:javascript
复制
$sql="SELECT * FROM `details` as d INNER JOIN `city` as c ON d.city_details=c.city_id WHERE c.cityName='The name you're looking for'";

然后使用下面的代码从表中获取所有内容

代码语言:javascript
复制
while($row=mysql_fetch_assoc(mysql_query($sql))){
  echo $row['name']; //for name
  echo $row['mytext']; //etc.
}

有关更多信息,请参阅http://dev.mysql.com/doc/refman/5.1/en/join.htmlhttp://php.net/manual/en/function.mysql-fetch-assoc.php

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3379934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档