SQL全称是“结构化查询语言(Structured Query Language),用的时候是直接传的sql语句去在数据库中执行;java
hql是hibernate query language,操做的是持久化对象,由底层的持久化对象的数据更新到数据库中区,他是hibernate造出来的对象sql语言,只有hibernate框架可以解析,并将其经过一系列的映射转换,拼凑成sql语言。sql
JPQL是面向对象的查询语言,所以它能够彻底理解继承、多态和关联等特征。并且JPQL内置了大量函数,极大地方便了JPQL查询的功能。固然JPQL底层依然是基于SQL的,但JPQL到SQL的转换无须开发者关心,JPQL解析器会负责完成这种转换,并负责执行这种转换的SQL语句来更新数据库。 jpql其原型就是hibernate。sun看到hibernate作的orm技术作的很是好,成为行业内领导orm框架的主流产品,故sun将其吸取进EJB3中,制定了一套orm的java api标准(特别说明的是:hibernate框架制造者,也是ejb3 jpa规范的定制者)。 故jpql极其相似hql。数据库
CQL是Cassandra Query Language的缩写,目前做为Cassandra默认而且主要的交互接口。CQL和SQL比较相似,主要的区别是Cassandra不支持join或子查询,除了支持经过Hive进行批处理分析。api