php - 每个卖家的邮政编码过滤器 - mysql

标签 php mysql sql database-design

我正在 PHP 中实现一个 Web 服务,该服务将检索按特定邮政编码送货的卖家列表。我想知道比我目前正在做的更好的方法。

邮政编码示例表(ziptable):

-----------------------
| seller_id | zipcode |
-----------------------
|    101    | 110012  |
-----------------------
|    101    | 110023  |
-----------------------
|    102    | 110023  |
-----------------------

现在,我使用以下查询来获取以邮政编码 110023 送货的卖家列表:

SELECT * FROM sellers s, ziptable z
    WHERE z.zipcode = 110023 AND s.id = z.seller_id ;

有没有更好的方法可以通过更改数据库架构或 SQL 查询来获得相同的结果?

最佳答案

您实际上不需要从邮政编码表中返回任何列,但除此之外,使用适当的索引就可以了。请注意,我们通常会这样写:

SELECT s.* 
  FROM ziptable z
  JOIN sellers s
    ON z.seller_id = s.id
 WHERE z.zipcode = 110023;

关于php - 每个卖家的邮政编码过滤器 - mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28646989/

相关文章:

php - wordpress 获取所有发布页面的永久链接

c# - 当我在文本框中键入 RowFilter 时出现语法错误

php - 使用 PHP 根据 URL 显示/隐藏 Div

php - 记录 PHP 和 MySQL 上的应用程序事件

php - 将内容替换为 SQL 查询的获取参数

php - Mysql父记录在子表中有多个记录显示在一列中

java - MySQL/Java : Incorrect date value: '1990' for column

php - 从 json 数组获取值并执行 sql 插入

java - JDBC 和 MySQL : Do changes in the underlying database are known to the java program?

php - .htaccess mod 重写规则和符号