可能是一个非常简单的问题,但我不确定如何自己测试..
想象一下,我有一个mysql表,比方说30000行。
每行都有一列car_brand
。
在我的phpform中,我选择了以下汽车品牌:Mercedes, Audi, Chevrolet, Volkswagen, Opel
。
向用户展示汽车品牌的最快(使用内存较少)方式是什么?
使用tinyint
并说出0 = Mercedes
,1 = Audi
,2 = Chevrolet
...并在CASE
声明中使用SELECT
或使用php switch()
之前在HTML
表中显示它还是将数据保存为varchar
更好?
希望有人有明确的答案;)
答案 0 :(得分:1)
正确的方法是为品牌使用单独的参考表:
CarBrandId
然后使用join
参考其他表格中的汽车品牌,并使用enum
获取品牌名称。这是处理引用表的正确方法。
如果您真的反对参考表,那么您可以使用 dtTable = $('#lookupTable').DataTable({
"columnDefs": [
{
"targets": [ 0 ],
"visible": false,
"searchable": false
}
],
aaData: data,
aoColumns: cols,
paging: false,
scrollCollapse: true,
destroy: true
});
。