如何在PostgreSQL中表示评级?
我有一个如何在PostgreSQL中表示评级?,postgresql,Postgresql,我有一个Ratings表,它有3列:location\u id,rating,user\u id(其中user\u id和location\u id是其他表中的外键)。我想限制评级,使其只能为0、1、2、3、4、5 我的第一个想法是 CREATE TYPE rating as ENUM('0', '1', '2', '3', '4', '5') 这是表示评分的好方法,还是有更好或更有效的方法来存储评分 我是SQL新手,如果我错过了一些明显的问题,我深表歉意,但我在别处找不到这个问题。枚举很少是
Ratings
表,它有3列:location\u id
,rating
,user\u id
(其中user\u id和location\u id是其他表中的外键)。我想限制评级,使其只能为0、1、2、3、4、5
我的第一个想法是
CREATE TYPE rating as ENUM('0', '1', '2', '3', '4', '5')
这是表示评分的好方法,还是有更好或更有效的方法来存储评分
我是SQL新手,如果我错过了一些明显的问题,我深表歉意,但我在别处找不到这个问题。枚举很少是一个好的选择 如果要将整型列限制在特定范围内,请使用检查约束:
alter table ratings
add constraint check_rating
check (rating between 0 and 5);