我如何制作不高于 5 的双倍?

How would i make a double that doesn't go higher than 5?

我想在 table 做一个双人间,比方说它是一家餐馆

   create table Restaurant(
    RestaurantName varchar(17),
    rating double?
    );

基本上,如果您希望它在餐厅中获得满分 5 分的评分,您将如何继续这样做?所以它可能是 4.25 或 3.91 或 0-5.0

之间的任何值

在MySQL8.0中,可以使用检查约束:

create table restaurant(
    restaurantname varchar(17),
    rating decimal(5, 4) check(rating between 0 and 5)
);

您可能不需要双精度来存储评分。我将数据类型更改为小数,有 4 个小数位。

我还假设您想要一个介于 0 和 5 (含) 之间的值。如果你想排除上限,那么:

    rating decimal(5, 4) check(rating >= 0 and rating < 5)

在早期版本中,您通常需要使用触发器来实现逻辑。