我有一个在SQL DB中查找信息的搜索表单,该数据有一列产品类型的缩写。我想上传带有缩写的数据,并使用PHP扩展搜索结果中的文本。
例如 PF =预先完成
可以这样做还是会以指数方式减慢搜索速度?
if ($producttype == "PF") {
$producttype == "Prefinished"
}
else{
// Else
}
答案 0 :(得分:1)
第一步是将这些转换放入一个表格,您可以在表格中映射代码和名称,如果需要,可以反之亦然。
然后你可以JOIN
反对这个表来进行扩展。对于小桌子,这个成本是名义上的,你真的不会在基准测试中感受到它。
CREATE TABLE product_types (
id INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
code VARCHAR(255) NOT NULL,
label VARCHAR(255) NOT NULL,
UNIQUE KEY `index_product_types_on_code` (`code`)
);
然后相应地填充它,以便您可以:
SELECT * FROM products
LEFT JOIN product_types ON product_types.code=products.producttype
如果这是一个问题,并且这些数据不经常更改,您可以将其作为关联数组加载到应用程序层,并将它们映射到PHP中。