如何计算mysql中的唯一记录

时间:2013-02-23 16:18:44

标签: php mysql

我有一个大型属性数据库,我正在尝试获取特定属性的邮政编码,然后获取第一个字母(区域),然后计算该区域中数据库中的所有其他属性。

我在追求的是:

属性邮政编码为L21 5PU

我想显示一个链接列表:

中的类似属性

L1(4) L2(5) L23(27)等等

这是我最喜欢的地方

$PC = 'L';

PCSearch = mysql_query("SELECT * FROM Property WHERE POSTCODE LIKE '$PC'")

但是,如何计算邮政编码以$PC开头的每个属性(在本例中为L)并显示邮政编码列表旁边的数字?

3 个答案:

答案 0 :(得分:2)

使用group by,类似

SELECT postcode , count(*) as property_count FROM property GROUP BY postcode

这将对所有邮政编码进行分组,并为您提供属性计数。

如果你想进行部分匹配,我相信你必须为你想查找的每个部分邮政编码运行一个循环,并在上面的查询中添加一个“where”子句。

.. WHERE postcode LIKE 'L%'

答案 1 :(得分:0)

尝试此查询:

SELECT `postcode`, CONCAT(`postcode`, COUNT(`postcode`)) AS `output`
FROM `Property`
GROUP BY `postcode`

output现在应该包含您需要的内容。

答案 2 :(得分:0)

您可以使用三个函数使用SQL查询完成所有这些操作:

SUBSTRING

COUNT

GROUP BY