跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • [SQL] 请问这种字段超多的数据表应该怎么检索全部字段
未分類
16 12 月 2020

[SQL] 请问这种字段超多的数据表应该怎么检索全部字段

[SQL] 请问这种字段超多的数据表应该怎么检索全部字段

資深大佬 : 12tall 16

小弟对数据库仅用过简单的增删改查。昨天同事提了个想法,有点懵逼。求各位大佬指点迷津

大佬有話說 (14)

  • 資深大佬 : l00t

    不知道你在说什么…… 你这列的“需求”,完全不清晰。像“4.”, 这甚至不是需求。

    使用自然语言在所有字段中检索?这是个怎样的场景?

    “相关性排序”又是个什么东西?

  • 資深大佬 : ztxcccc

    上搜索引擎,Apache Solr

  • 資深大佬 : l00t

    不考虑那些不清楚的内容,单说字段可能经常增加这点,使用传统关系型数据库的话,一般可以用纵表形式。字段是一条记录,而不是真的表字段。而建的表可以是 ID, 字段名,字段值 这样的形式。

    不过如果综合你别的需求来考虑的话,那整个模型就未必合适。

  • 主 資深大佬 : 12tall

    @l00t 非常感谢
    `4.` 的话是做网页的时候遇到的一个比较头疼的问题,跟 SQL 无关

    我理解的检索是:用户输入一组关键词,去匹配数据表中的所有字段,返回包含全部或几个关键词的记录行
    如果某一行包含所有用户输入的关键词,那么它就要被优先显示

  • 主 資深大佬 : 12tall

    @ztxcccc 谢谢,去百度一下

  • 資深大佬 : l00t

    @12tall #4 这种检索方式就不要用 mysql 了,用 elastic search 之类的吧。

  • 主 資深大佬 : 12tall

    @l00t 哇,非常感谢大佬的推荐。谢谢!

  • 資深大佬 : dfzj

    给这个结构化数据库对应建立一张资源索引表:
    CEATE TABLE table1 (id
    , content TEXT — 把所有字段内容放入该字段中
    , srcId — 源表 ID)

    然后界面上用户输入 关键词,去查出 table1.conent, 得到 srcId, 最终找到目标

  • 主 資深大佬 : 12tall

    @dfzj 谢谢,请问这个和视图、或者传说中的倒排索引是不是很像呢

  • 資深大佬 : dfzj

    @12tall 有点那种意思,但还差的远。倒排索引还得把所有字段内容先做分词,然后按照词来排

  • 資深大佬 : imn1

    2. google “SQL 全文检索”
    3. 考虑 NOSQL,或者 sql+json

  • 資深大佬 : whx20202

    1. 用一个同步工具(订阅 binlog 那种)同步到 elastic search 里。
    2. 用 es 查询

  • 資深大佬 : shuax

    改用 es

  • 資深大佬 : wakzz

    你这个需求不建议使用 mysql,建议将 mysql 的数据实时同步到 es 后,通过 es 来查询

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具