为商店设计数据库

时间:2018-02-21 13:07:33

标签: mysql

我应该如何设计数据库以达到最佳速度。

  1. 我应该使用空或NULL?
  2. 我有3张桌子。选择最快捷的方式是什么?左连接? “类别”: ID 名称
  3. “子类别” ID 子名 CAT_ID

    “Subsubcategory” ID subsubname subcat_id

    UPD。 非常感谢你的帮助。

    P.S。 你为什么不喜欢我的问题?是的,我是菜鸟,但我想知道。非常感谢。

1 个答案:

答案 0 :(得分:0)

使用MySQL加速某些选择的好方法是创建一个名为Indexes的东西。

如果您有一个包含许多行的大型数据库,并且只需要查询某些列,那么创建该列的索引会在复杂查询时大大加快速度。

一个例子是:CREATE INDEX index_name ON table_name (column1, column2, ...);

以下是我的一个项目中的一个示例,它为它提供了便利,我为电子邮件列创建了一个索引

SELECT 
    emails.Table.email AS email,
    COALESCE(emails.Table.clicks, 0) AS clicks
    FROM emails.Table
    LEFT OUTER JOIN otherDB.OtherTable on emails.Table.email = otherDB.OtherTable.email
    GROUP BY email, clicks
    ORDER BY clicks

在我的情况下,COALESCE函数用0替换任何nil值。

希望这有帮助!