Java sql如何处理关系数据?
我知道它是一个非关系数据库,但这并不意味着关系数据不存在 例如,我有一个表,其中包含如下URL(简化): 我有一个表,其中包含这样的域(简化): 因为许多不同的URL可能具有相同的域,所以在提取数据以发送到视图时,我不想为每个域重复favicon_路径 因此,当我需要数据时,我使用了一个简单的(例如简化的)join命令Java sql如何处理关系数据?,java,javascript,sql,nosql,Java,Javascript,Sql,Nosql,我知道它是一个非关系数据库,但这并不意味着关系数据不存在 例如,我有一个表,其中包含如下URL(简化): 我有一个表,其中包含这样的域(简化): 因为许多不同的URL可能具有相同的域,所以在提取数据以发送到视图时,我不想为每个域重复favicon_路径 因此,当我需要数据时,我使用了一个简单的(例如简化的)join命令 "SELECT bookmarks.*, domains.favicon FROM bookmarks JOIN domains ON bookmarks.domain=d
"SELECT bookmarks.*, domains.favicon FROM bookmarks JOIN
domains ON bookmarks.domain=domains.domain"
如果不使用sql,我将如何处理这种情况
我计划在客户端(javascript)上使用
indexedDB
,在服务器(java)上使用MongoDB
实现无sql。如果您想使用面向文档的数据库,可以使用以下文档结构:
URL\u ID:{
“域”:“域的id”,
“另一个工作人员”:“…”
}
域ID:{
“favicon_路径”:“另一文档的路径或id”,
“另一个工作人员”:“…”
}
所以,您可以从数据库中按ID获取具有URL_ID的文档,然后获取域类型的文档
添加:
您可以使用以下方法生成id。创建只有一个字段的特殊文档(如序列)——序列的当前值。每次插入数据库时,您都必须获得该序列并将其递增。一些数据库(如Couchbase)对这种机制提供了低级支持,这种机制非常高效且线程安全。根据多年在IT领域的工作经验,我认为大多数业务模型都可以规范化,就像这两种数据结构一样简单:
对于NoSQL数据库,例如or,图书实体存储有键值,其中键是图书序列号,值是经过字符串化的图书信息(标题、出版日期、描述等)。而图书列表(按出版日期列出、按价格列出等)存储在zset数据类型中。您所说的“员工”是什么意思。。。这是“财产”的同义词吗?对不起,是俚语。我指的是对象的另一个字段,或者在关系数据库中指的是表的另一列(因为面向文档的数据库中的文档类似于关系数据库中的行)。sql不能处理id生成,它能扩展我从mysql传入的id吗?在大多数情况下,数据库之间的传输由您自己完成,实际上,这并不难。
domain | favicon_path
"SELECT bookmarks.*, domains.favicon FROM bookmarks JOIN
domains ON bookmarks.domain=domains.domain"