我正在构建一个程序,用于存储公司的新闻头条以及来自各种来源的时间戳。
假设公司的数目为1000。就像苹果,谷歌,微软等。
因此,我可以考虑两种选择。
一个有很多行的表(上面的代码只是一个例子)。
CREATE TABLE news
(
news_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
company VARCHAR(10) NOT NULL,
timestamp TIMESTAMP NOT NULL,
source TEXT NOT NULL,
content TEXT NOT NULL,
…
)
// I also can make company and timestamp as primary keys,
and news_id will be unique key.*
1000桌
CREATE TABLE news_apple // and news_google, news_microsoft, news_...(x 1000)
(
news_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
timestamp TIMESTAMP NOT NULL,
source TEXT NOT NULL,
content TEXT NOT NULL,
…
)
大多数时候,我会找到有关该公司的消息。假设每个公司有10000多个新闻。我想知道如果我在第一个选项中使用’WHERE’子句,它会比第二个选项慢。
就性能而言,哪一个效率更高?为什么?
关系数据库被设计为每个表存储许多行。有很多机制可以简化大型表,例如:
将数据放在单个表中时,有一件事情比较困难,那就是安全性。而且,实际上,在某些情况下,这是一个主要问题,并且基本上需要将数据放在单独的表中。这些应用程序很少见,而且相差很远。
举例说明在多个表中存储数据有多糟糕,可以想象一下,在您的系统中,每个公司有一条记录,然后将其存储在一个表中。该记录存储有关公司的信息-
诸如名称,地址之类的信息。呼叫是100字节的信息。
在您的架构中,每个“公司”都有一个单独的表,因此每个表一行。该记录将驻留在一个数据页上。数据页可能为16 KB,因此您浪费了大约15.9
KB来存储此数据。存储1000条这样的记录占用了16 MB的空间,而不是大约7页(112 KB)。这可能会严重影响性能。
此外,使用多个表时,您无需考虑维护所有表以及确保不同表中数据正确性的挑战。维护更新需要应用于数千个表,而不是少数几个。
问题内容: 我正在尝试优化将数据插入MySQL的代码的一部分。我应该将INSERT链接起来以制作一个巨大的多行INSERT还是更快地使用多个单独的INSERT? 问题答案: https://dev.mysql.com/doc/refman/8.0/zh-CN/insert- optimization.html 插入行所需的时间由以下因素决定,其中数字表示近似比例: 连接:(3) 向服务器发送查询:
问题内容: 使用哪种更好或更方便: 要么 问题答案: 您是否完全需要类型属性?如果您使用的是HTML5,则不会。否则,是的。HTML 4.01和XHTML 1.0 根据需要指定属性,而HTML5具有可选属性,默认为。HTML5现在得到了广泛的实现,因此,如果您使用HTML5doctype,则是有效且不错的选择。 至于type属性中应该包含的内容,2006年注册的MIME类型旨在替代所有主要浏览器(
将excel的大数据导入到MySQL数据库需要很长时间,那么如何提高性能呢? Excel数据喜欢以下内容: 学生表 床单课程 MySQL的表喜欢如下: 学生桌 资源表 图像的浅灰色区域可能会得到改善,但我不知道如何对其进行优化。使用 和字段确定行数据是否唯一<代码>参考id和表中的字段确定行数据是否唯一。
问题内容: 要在数据库中搜索在任何列“ foo_desc”和“ bar_desc”中同时具有关键字“ foo”和“ bar”的行,我将执行以下操作: 要么 我希望最后一个查询的缺点是性能。 好的一面是,LIKE查询找到了“ MATGA AGAINST”找不到的“ xxfoo”。 哪一个是首选,还是有更好的解决方案? 问题答案: 更新资料 从表开始,表支持。 第一个 要 好得多。在 MyISAM 表
问题内容: 我创建了一个SQL查询,该查询更新了一个表列,其中另一列=值 代码: 问题出在。如何使其使用这些ID更新列? 问候。 问题答案: 替换为
我很难决定是使用视图还是临时表。 我有一个从程序中调用的存储过程。在SP中,我将一个长查询结果存储在一个临时表中,命名列并对该表进行另一个查询,将结果存储在labels或gridview中,然后删除临时表。我还可以将查询结果存储在一个视图中,并在该视图上进行查询。那么什么更好,或者在什么情况下我必须使用视图/临时表。 根据我的研究,一种观点具有以下优点:安全性,简单性和列名规范。我的临时桌子也满足