我想知道如何在数据库中显示多个值,例如,假设您有一个用户将填写一个表格,要求他们输入喜欢的食物类型,例如饼干,糖果,苹果,面包等。上。
如何将其存储在MySQL数据库中名为food的同一字段下?
野外食物结构会如何?
最佳答案
您可能需要阅读the excellent Wikipedia article on database normalization。
您不想在单个字段中存储多个值。您想做这样的事情:
form_responses
id
[whatever other fields your form has]
foods_liked
form_response_id
food_name
其中
form_responses
是包含单数(例如一个人的名字或地址,或没有多个值的东西)的表。 foods_liked.form_response_id
是对form_responses
表的引用,因此,对于form_response_id
中foods_liked
字段,响应值为6的人喜欢的食物的值将为6。在该表中,该人喜欢的每种食物都会有一行。编辑:其他人建议使用三表结构,如果您将用户限制为从预定义列表中选择食物,那肯定会更好。如果您允许他们输入自己的食物,那么三张桌子的结构可能会更好,但是如果您按照这种方式行事,则需要注意将输入标准化(修剪空白,固定大写字母等)。 ),这样就不会在该表中出现重复的条目。
关于sql - 如何在MySQL数据库中显示多个值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1592327/