我想创建一个数据库,其中包含所有产品评级和用户购买的备注
假设我创建了一个包含某些列
的表名“Users_rating_product”user_id ->INT
company->Varchar
product1 -> 3 (rating of product out of 5)|(review of product)
product2-> 4(rating)|(some review)
我想知道如何在mysql中执行此操作。我正在使用phpmyadmin进行数据库创建
表格似乎
user_id | company |Ac | TV | fridge
1 | goderaj |3 ,take more power |4,less power |5,efficient
我想知道我该怎么做才能让产品的评级和注释显示在同一列
中答案 0 :(得分:0)
为此你需要一张单独的桌子。称之为ProductRating
。将唯一键(ID
)放入表中,并将该键引用到Users_rating_product
表。
例如:
Users_rating_product:
user_id | company |Ac | TV | fridge
1 | goderaj |1 | 2 | 3
2 | somecomp |4 | 5 | 6
ProductRating
ID | Rating | Review
1 | 3 | Take more power
2 | 4 | less power
3 | 5 | efficient
4 | 5 | excellent
5 | 1 | awful
6 | 3 | average
答案 1 :(得分:0)
您可以通过多种方式实现自己的功能。 但这不是编写查询的标准格式。
you can have comma seperated column in your database like this
user_id | company |Ac_mapping_id
1 | goderaj |1,REview for Ac
你可以像这样分开两个值
PARSENAME(REPLACE(String,',','.'),2) 'Name'
for Detail Reference用于拆分您可以参考的两个值: click To refer
更好的方法是将产品描述存储在不同的表中。 您可以轻松编写查询以检索数据
user_id | company |Ac_mapping_id | TV_mapping_id | fridge_mapping_id
1 | goderaj |1 | 2 | 3
&安培;存储所有评级&像这样的映射表中的评论
Ac_mapping_id | Rating |Review
1 | 1 |abcd
等于另一张桌子。
对于检索所有数据,只需使用左外连接
Select
*
from
Users_rating_product mm
Left outer join Ac_mapping_table ac on ac.ac_mapping_id = mm.ac_mapping_id
.....so on