gpt4 book ai didi

mysql,查表能力

转载 作者:行者123 更新时间:2023-11-30 23:38:51 25 4
gpt4 key购买 nike

我正在创建一个网站,我在其中列出了在每一列中找到的可能的唯一/不同值。用户将选择值并执行搜索。

我想到的两种方法:

1> 在旅途中,当用户选择一个表时,我将为每一列运行一系列不同的命令。我注意到此方法速度较慢,但​​我不需要做太多工作

2> 为每一列创建某种选项列表并保存到某种文件中。对于用户来说,这似乎是最快的方法,但需要一些工作来创建不同值的表摘要文件。

谁能提出一个好的解决方案?

最佳答案

您的第三个选择是重新考虑您的数据库设计。如果您的列中的信息是重复的,那么创建额外的表来存储实际值可能是有意义的,然后在您的“主”表中仅存储链接回来的 ID。

然后您可以将唯一值存储在关系表中,只需调用每个相关表来创建您的下拉列表。

例如,假设你有一张 table

Users
user_id
fname
lname
city
state
zip
favorite_color

如果您要获取城市和最喜欢的颜色的不同值,您将需要遍历所有行以确定该信息。因此,您最终会使用方法 1 对数据进行 N * 字段扫描以填充表格。

如果您改为创建一个布局,其中有两个额外的表格:

City
city_id
city_name

favorite_color
favorite_color_id
color_name

然后将你的用户表修改为

Users
user_id
fname
lname
city_id
state
zip
favorite_color_id

然后您完成了几件事。首先,如果您需要所有城市和颜色,您只需浏览 X 条记录,其中 X 是城市/颜色的唯一数量。此外,您的表 Users 的整体大小最终会变小,因为您不会一遍又一遍地存储字符串,而只是存储一个占用更少空间的 ID。

最终,您会得到一个比您现在已经考虑的方法更强大、更具可扩展性的解决方案。

关于mysql,查表能力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5171623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com