SQLite查询以获取包含名字或姓氏的搜索文本的下一个可用字符

隔壁的Android Developer

如何查询sqlite数据库以获取两列搜索关键字之后的下一个可用字符列表。例如,如果搜索关键字为'and',并让列为firstname和lastname:

And[y] Xyz
And[r]ew And[z]
Xyz And[o]n
Mirand[a] Lorand[e]

那么我应该得到字符[y,r,z,o,a,e]。

我尝试使用substr和instr,但是我无法编写一个查询,同时查询姓和名,并在两个查询中都返回下一个字符。

福帕斯

使用UNION ALL2列中的值,并使用rowid获得正确的顺序:

select nextchar from (
  select
    1 col, 
    rowid,
    substr(firstname, instr(lower(firstname), 'and') + 3, 1) nextchar
  from names 
  where firstname like '%and%'
  union all 
  select
    2, 
    rowid,
    substr(lastname, instr(lower(lastname), 'and') + 3, 1)
  from names 
  where lastname like '%and%'
) t
order by t.rowid, t.col

参见演示
结果:

| nextchar |
| -------- |
| y        |
| r        |
| z        |
| o        |
| a        |
| e        |

如果希望将结果作为逗号分隔的字符串,请使用group_concat()

select group_concat(nextchar) chars from (
  select nextchar from (
    select
      1 col, 
      rowid,
      substr(firstname, instr(lower(firstname), 'and') + 3, 1) nextchar
    from names 
    where firstname like '%and%'
    union all 
    select
      2, 
      rowid,
      substr(lastname, instr(lower(lastname), 'and') + 3, 1)
    from names 
    where lastname like '%and%'
  ) t
  order by t.rowid, t.col
)

参见演示
结果:

| chars       |
| ----------- |
| y,r,z,o,a,e |

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Sqlite 查询以获取匹配搜索关键字后的下一个可用字符列表

SQLite Entity Framework查询以返回下一个可用日期

xpath查找包含特定文本的div并获取下一个跨度

XPath:获取父包含文本的下一个元素

Impala查询以获取下一个日期

获取下一个元素文本

下一个包含失败

按姓氏和 id 的字母顺序搜索下一个用户。- 表有多个重复名称

如何插入二叉搜索树上的下一个可用节点?

如果按特定字符串搜索元素,如何获取下一个兄弟的值?

成为下一个可用(非隐藏)文本字段的第一响应者

Javascript,XPath,根据搜索文本选择下一个文本

SQL查询以获取最近的上一个和下一个日期?

如何在正斜杠(直到下一个正斜杠或字符串末尾)之后获取文本?

如何使用模式获取 DOM 中的下一个可用节点?

获取列表中的最高编号或下一个可用编号

如何从用户文件中获取下一个可用的UID

获取范围内的下一个可用值

按日期获取熊猫过滤器中的下一个可用日期

循环以获取表中的下一个不可用数字

从可用版本中获取下一个最高版本号

如何从Django的数据库中获取下一个可用的对象或主键

从名称数组中获取下一个可用的ID

使用下一个div的文本设置“下一个”按钮的文本

在字符串中搜索子字符串并返回下一个单词

雄辩的查询以获取具有员工角色且名字或姓氏包含字符的用户

如何在表中插入一行,其中一列在 ascii 表中的下一个字符为接下来的 11 个可用字符?

Python使用tkinter在滚动文本框中搜索下一个单词

获取多个结果xpath div文本和下一个div文本