目录

  • 前言
  • 安装Cassandra
  • 准备一张表和若干记录
  • 模糊查询1(疑问)
  • 模糊查询2
  • 模糊查询3


前言

  • 操作系统win10
  • 时间2019年02月
  • Python版本:Python 3.5.2
  • Cassandra版本:cassandra 3.11.3
  • 参考网址1
  • 参考网址2

安装Cassandra

安装Cassandra数据库

  1. 官网下载Cassandra压缩包
  2. 解压,并配置环境变量:
操作 变量名 变量值
新建 CASSANDRA_HOME 解压路径
增加 PATH 解压路径\bin;

测试

C:\Users\wahaha>cassandra

准备一张表和若干记录

创建一张表

cqlsh> create table test.user (name text primary key, age int, email text)
cqlsh>

插入若干记录

cqlsh> insert into test.user (name, age, email) values ('aaa', 20, 'aaa@20.com');
cqlsh> insert into test.user (name, age, email) values ('no_aaa', 21, 'no_aaa@21.com');
cqlsh> insert into test.user (name, age, email) values ('bbb', 22, 'bbb@22.com');
cqlsh> insert into test.user (name, age, email) values ('no_bbb', 21, 'no_bbb@21.com');
cqlsh> insert into test.user (name, age, email) values ('ccc', 23, 'ccc@23.com');
cqlsh>

查询所有记录

cqlsh> select * from test.user;name   | age | email
--------+-----+---------------no_aaa |  21 | no_aaa@21.comaaa |  20 |    aaa@20.combbb |  22 |    bbb@22.comccc |  23 |    ccc@23.comno_bbb |  21 | no_bbb@21.com(5 rows)
cqlsh>

模糊查询1(疑问)

对某一列进行配置

需要对哪一列进行模糊查询,例如,本文就对email列进行模糊查询
本次配置可以模糊查询以xx字符开头的记录
疑问:无法对设置为primary key的字段进行模糊查询配置

 cqlsh> create custom index user_name_idx ON test.user (name) USING 'org.apache.cassandra.index.sasi.SASIIndex' WITH OPTIONS = {'analyzer_class': 'org.apache.cassandra.index.sasi.analyzer.StandardAnalyzer', 'case_sensitive': 'false'};
InvalidRequest: Error from server: code=2200 [Invalid query] message="Cannot create secondary index on partition key column name"
cqlsh>

模糊查询2

对某一列进行配置

需要对哪一列进行模糊查询,例如,本文就对email列进行模糊查询
本次配置可以模糊查询以xx字符开头的记录

cqlsh> create custom index user_email_idx ON test.user (email) USING 'org.apache.cassandra.index.sasi.SASIIndex' WITH OPTIONS = {'analyzer_class': 'org.apache.cassandra.index.sasi.analyzer.StandardAnalyzer', 'case_sensitive': 'false'};
cqlsh>

测试模糊查询

模糊查询email字段以no开头的所有记录

cqlsh> select * from test.user where email like 'no%';name   | age | email
--------+-----+---------------no_aaa |  21 | no_aaa@21.comno_bbb |  21 | no_bbb@21.com(2 rows)
cqlsh>

模糊查询3

对某一列进行配置

需要对哪一列进行模糊查询,例如,本文就对email列进行模糊查询
本次配置可以模糊查询包含xx字符的记录

cqlsh> create custom index user_email_idx ON test.user (email) USING 'org.apache.cassandra.index.sasi.SASIIndex' WITH OPTIONS = {'mode': 'CONTAINS', 'analyzer_class': 'org.apache.cassandra.index.sasi.analyzer.StandardAnalyzer', 'case_sensitive': 'false'};
cqlsh>

测试模糊查询

模糊查询email字段包含aaa的所有记录

cqlsh> select * from test.user where email like '%aaa';name   | age | email
--------+-----+---------------no_aaa |  21 | no_aaa@21.comaaa |  20 |    aaa@20.com(2 rows)
cqlsh>

转载于:https://www.cnblogs.com/yun1233/p/10388047.html

Cassandra数据库模糊查询相关推荐

  1. vc mysql 查询_VC++数据库模糊查询及精确查询示例代码分享

    VC++数据库模糊查询及精确查询示例代码分享是小编为大家带来的一个VC++电话簿程序中的模糊查询例子源代码,结合数据库,可以学习研究下简单一点的模糊查询和精确查询,希望能对大家有帮助,,赶紧来详细了解 ...

  2. Elasticsearch(ES)数据库模糊查询source下的数据

    Elasticsearch(ES)数据库模糊查询source下的数据: 1.先全部匹配查看一下数据: 查询数据结果如下: 由图可以看到 总共返回数据条数为:4297. 我们根据source下的id 模 ...

  3. python数据库模糊查询_python中数据库like模糊查询方式

    python中数据库like模糊查询方式 在Python中%是一个格式化字符,所以如果需要使用%则需要写成%%. 将在Python中执行的sql语句改为: sql = "SELECT * F ...

  4. python数据库模糊查询_原创:Python编写通讯录,支持模糊查询,利用数据库存储...

    1.要求 数据库存储通讯录,要求按姓名/电话号码查询,查询条件只有一个输入入口,自动识别输入的是姓名还是号码,允许模糊查询. 2.实现功能 可通过输入指令进行操作. (1)首先输入"add& ...

  5. python数据库模糊查询_Python操作mongodb数据库进行模糊查询操作示例

    本文实例讲述了Python操作mongodb数据库进行模糊查询操作.分享给大家供大家参考,具体如下: # -*- coding: utf-8 -*- import pymongo import re ...

  6. mysql数据库模糊查询简介

    在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,%:表示任意0个 ...

  7. MySQL 数据库 模糊查询和聚合函数

    模糊查询: like 运算符 通配符:%--代表0-n个任意字符 - --代表单个任意字符 注意:只有char.varchar.text类型才能使用 例子: select * from student ...

  8. 处理数据库模糊查询%,_问题(JAVA)

    mybatis%_查询 本文章向大家介绍mybatis%_查询(hibernate也可用相同的处理方式),具有一定的参考价值,需要的朋友可以参考一下. 出现问题得原因 在我们做web项目 使用模糊查询 ...

  9. 数据库模糊查询和范围查询

    --查询一张表 select * from 表名--*代表所有 select 列1,列2,列3 from 表名 where 条件 select 列名 as 别名,列名 别名,别名=列名 from 表名 ...

  10. 微信小程序云开发数据库模糊查询

    官方文档中并没有模糊查询的功能,但是有正则表达式的功能,所以模糊查询就可以这样实现 const db = wx.cloud.database(); db.collection("collec ...

最新文章

  1. 使用Action启动/关闭Service
  2. Select 子句后的别名,在where条件中不能使用
  3. 初识Mysql(part19)--我需要知道的3条Mysql语句之组合查询
  4. 云服务器重装系统后卡顿,云服务器Windows重装系统须知
  5. ECMAScript 语法提案的批准流程
  6. JAVA 面试高频提问知识点之:SET、LIST 和 MAP 的区别
  7. 聚类分析二:DBSCAN算法
  8. Hibernate 学习的书-夏昕(1)
  9. JESD204B调试1
  10. PPP和PDP激活区别
  11. win10获得system权限(超级管理员)
  12. 大一新生计算机强化训练小结,大一新生军训个人小结
  13. C# 同间字查询 (汉字转拼音 拼音转汉字 简体繁体互转 )
  14. 2022年提高程序员在Boss直聘找工作时在线简历邀请面试概率的几点思考
  15. 计算机前进后退灰的无法按,《微机试题2012新题.xls》-支持高清全文免费浏览-max文档...
  16. 世界上这五类人永远不可能成为编程界牛人
  17. 玩转STM32F0 Value Line Discovery 之 GPIO配置工具
  18. Python 上下文管理器和with块 二
  19. 20220714暑期实习笔记-下午
  20. FBX格式mesh解析与加载(一)

热门文章

  1. iHRM 人力资源管理系统--第1章 SAAS-HRM系统概述与搭建环境
  2. java类注释_Java注释,java类注释详解
  3. java多行注释_Java注释:单行、多行和文档注释
  4. VC 2012 编译出错,避免运行老代码
  5. GB28181之国标编码规则
  6. 2021版手机号验证最新正则表达式
  7. 最近在建模,顺便汉化一个软件玩玩
  8. 电子元器件选型——功率电感
  9. 2022快手春节集卡活动 集好运中国福活动攻略
  10. MySQL练习题(经典50题)