Java持久性查询语言(JPQL)中SELECT c FROM Customer c WHERE c.name LIKE :custName中c的理解

时间:2022-09-22 09:46:28

一直对oracle官网上的教程中的这句:

SELECT c FROM Customer c WHERE c.name LIKE :custName

中的c指的是啥有点不甚了解。

Java持久性查询语言(JPQL)中SELECT c FROM Customer c WHERE c.name LIKE :custName中c的理解


如果说以SQL语句的角度来理解c的话,这个c可以理解成Customer的一个别名,但是前面那个SELECT c中的照这样理解的话是啥含义呢,原来一直没咋弄明白,知道今天有了一个小小的猜测,那个SELECT c是不是指Customer表中的所有属性呢,换句话说,这里可以用SQL语句写成:

SELECT * FROM Customer as c WHERE c.name = ?


下面就是我的小心求证之旅了:

在网上找到了一篇使用 JPQL 和原生 SQL 查询 JPA 实体文章。

里面的这样两句话大概是可以证实了我的猜想:

Java持久性查询语言(JPQL)中SELECT c FROM Customer c WHERE c.name LIKE :custName中c的理解


Java持久性查询语言(JPQL)中SELECT c FROM Customer c WHERE c.name LIKE :custName中c的理解


更新:看到了一篇讲JPQL的文章,里面很好的解决了我的小疑问:

Java持久性查询语言(JPQL)中SELECT c FROM Customer c WHERE c.name LIKE :custName中c的理解

附上连接:https://blog.csdn.net/timo1160139211/article/details/72935260