gpt4 book ai didi

mysql - 如何改进字段名称

转载 作者:行者123 更新时间:2023-11-29 14:42:30 24 4
gpt4 key购买 nike

我正在尝试改进字段名称,使其含义更加明显。字段名称可以吗?或者可以改变什么以使其更加明显?

mysql> select * from order_items;
+----+----------+--------+----------+------------+-------+
| id | order_id | name | quantity | item_price | total |
+----+----------+--------+----------+------------+-------+
| 1 | 5 | Item 1 | 2 | 3.00 | 6.00 |
| 2 | 5 | Item 2 | 1 | 2.00 | 2.00 |
+----+----------+--------+----------+------------+-------+

mysql> select * from orders;
+----+---------+---------+-----------------+---------------+----------------+----------+---------------+------------+----------------+------------+----------------------+--------------------+--------------------+----------------------+
| id | shop_id | user_id | shipping_method | shipping_fees | payment_method | card_fee | commision_fee | item_total | customer_total | shop_total | shop_total_remaining | our_commission_net | our_commission_vat | our_commission_gross |
+----+---------+---------+-----------------+---------------+----------------+----------+---------------+------------+----------------+------------+----------------------+--------------------+--------------------+----------------------+
| 5 | 29 | 9 | delivery | 1.00 | card | 0.50 | 13 | 8.00 | 9.50 | 9.00 | 7.83 | 1.17 | 0.23 | 1.40 |
+----+---------+---------+-----------------+---------------+----------------+----------+---------------+------------+----------------+------------+----------------------+--------------------+--------------------+----------------------+

字段名称说明:

  • item_total order_items.order_id = 5 的总成本

  • customer_total客户支付的总成本 ( item_total + card_fee + shipping_fee )

  • shop_total商店总订单 ( item_total + shipping_fees )

  • shop_total_remaining偿还商店的剩余总金额 ( shop_total - our_commission_net )

  • our_commission_net我将赚取佣金 ( commission_fee * shop_total/100)

  • our_commission_gross佣金包含增值税 ( our_commission_net + our_commission_vat )

我是否添加了不必要的字段?

我使用PHP来计算成本。

最佳答案

我可以看到您实际上添加了许多不必要的字段。可以这样想:如果您可以解释如何通过对其他字段应用任何操作来计算一个字段,那么它就是一个计算字段。

这些字段不应该是简约设计的一部分,因为它们可以通过对其他字段进行操作来获得。让我们看一下表格中最复杂的示例。

如果您想获取示例中某个订单的所有商品的总计,您只需选择 item_total 字段即可。但如果它不存在会发生什么?你还能得到那个号码吗?是的。方法如下:

select sum(oi.total) from order_items oi
inner join order o on (oi.order_id = o.id)
where (o.id = 5)

现在,我们已经删除了一个字段,但是我们可以删除 order_items.total 字段并仍然得到这个结果吗?是的。因为它也是一个计算字段。方法如下:

select sum(oi.quantity * oi.item_price) from order_items oi
inner join order o on (oi.order_id = o.id)
where (o.id = 5)

应用类似的模式,您可以删除您提到的所有字段。然后你就会得到一个最小的设计。

值得一提的是,计算字段比查询值更复杂,因此在 CPU 和 HD 使用方面更昂贵。计算字段的优点是可以避免数据冗余并节省一些空间:)

关于mysql - 如何改进字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7704157/

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