【问题标题】:First part of postcode邮政编码的第一部分
【发布时间】:2011-11-15 18:14:49
【问题描述】:

我希望用户按邮政编码搜索,他们可以输入完整的邮政编码(例如:UB100PE / UB10 0PE)或邮政编码的第一部分(UB10)

我将使用getUKPostcodeFirstPart("UB100PE") 获取邮政编码的第一部分

Ref: getUKPostcodeFirstPart() by LazyOne

我想显示邮政编码第一部分的记录列表,应该这样做吗?

我应该在表格中添加stripped_postcode 字段吗?

类似::

SELECT records.company, records.full_postcode, area.* FROM records
  LEFT JOIN area on area.stripped_postcode = records.stripped_postcode AND records.id= area.record_id
WHERE records.stripped_postcode = "UB10"

它与两个表链接,recordsarea

记录表:

  • id (PK)

  • 公司

  • 邮编

  • stripped_postcode

面积表:

  • id (PK)
  • record_id (FK)
  • stripped_postcode
  • 字段1
  • 字段2

【问题讨论】:

    标签: php mysql sql database postal-code


    【解决方案1】:

    我有点困惑:似乎要避免在 SQL 中使用 like 需要做很多工作。

    SELECT records.company, records.full_postcode, area.[insert your fields here]
    FROM records
     LEFT JOIN area 
       ON area.stripped_postcode = records.stripped_postcode 
      AND records.id= area.record_id
    WHERE records.postcode like strSearch+'%'
    

    【讨论】:

    • 永远不要使用 *,总是定义字段。
    猜你喜欢
    • 1970-01-01
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多