数据库-链式查询

本文详细介绍了ThinkPHP框架中ORM的使用方法,包括where、table、alias等连贯操作方法,以及如何通过这些方法实现复杂的数据查询需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

where

where方法的用法是ThinkPHP查询语言的精髓,也是ThinkPHP ORM的重要组成部分和亮点所在,可以完成包括普通查询、表达式查询、快捷查询、区间查询、组合查询在内的查询操作。where方法的参数支持字符串和数组,虽然也可以使用对象但并不建议。

table

table方法主要用于指定操作的数据表。

alias

alias用于设置当前数据表的别名,便于使用其他的连贯操作例如join方法等。

field

field方法属于模型的连贯操作方法之一,主要目的是标识要返回或者操作的字段,可以用于查询和写入操作。

order

order方法属于模型的连贯操作方法之一,用于对操作的结果排序。

limit

limit方法也是模型类的连贯操作方法之一,主要用于指定查询和操作的数量,特别在分页查询的时候使用较多。ThinkPHP的limit方法可以兼容所有的数据库驱动类的。

page

page方法也是模型的连贯操作方法之一,是完全为分页查询而诞生的一个人性化操作方法。

group

GROUP方法也是连贯操作方法之一,通常用于结合合计函数,根据一个或多个列对结果集进行分组 。

having

HAVING方法也是连贯操作之一,用于配合group方法完成从分组的结果中筛选(通常是聚合条件)数据。

join

join通常有下面几种类型,不同类型的join操作会影响返回的数据结果。

  • INNER JOIN: 等同于 JOIN(默认的JOIN类型),如果表中有至少一个匹配,则返回行
  • LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
  • RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
  • FULL JOIN: 只要其中一个表中存在匹配,就返回行

union

UNION操作用于合并两个或多个 SELECT 语句的结果集。

distinct

DISTINCT 方法用于返回唯一不同的值 。

lock

Lock方法是用于数据库的锁机制,如果在查询或者执行操作的时候使用:

cache

cache方法用于查询缓存操作,也是连贯操作方法之一。

cache可以用于selectfindvaluecolumn方法,以及其衍生方法,使用cache方法后,在缓存有效期之内不会再次进行数据库查询操作,而是直接获取缓存中的数据,关于数据缓存的类型和设置可以参考缓存部分。

comment

COMMENT方法 用于在生成的SQL语句中添加注释内容,

fetchSql

fetchSql用于直接返回SQL而不是执行查询,适用于任何的CURD操作方法。

force

force 方法用于数据集的强制索引操作,

bind

bind方法用于手动参数绑定,大多数情况,无需进行手动绑定,系统会在查询和写入数据的时候自动使用参数绑定。

partition

partition 方法用于是数据库水平分表

strict

strict方法用于设置是否严格检查字段名,

failException

failException设置查询数据为空时是否需要抛出异常,如果不传入任何参数,默认为开启,用于selectfind方法,

sequence

sequence方法用于pgsql数据库指定自增序列名,其它数据库不必使用,用法为:

转载于:https://www.cnblogs.com/q1104460935/p/6916323.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值