0

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

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

参考: LazyOne 的 getUKPostcodeFirstPart()

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

我应该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"

它与两个表链接,records并且area

记录表:

  • 身份证(PK)

  • 公司

  • 邮政编码

  • 剥离邮政编码

面积表:

  • 身份证(PK)
  • 记录 ID (FK)
  • 剥离邮政编码
  • 字段1
  • 字段2
4

1 回答 1

0

我有点困惑:避免在 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+'%'
于 2011-11-15T18:34:20.660 回答