php tp 查数据库数据一条_PHP的TP框架数据库查询细节

数据库查询结果的各种差异及空判断:

find():

select方法获取的是一个一维数组,以字段名为索引。

查询不到时为null: (此时判断为空用list !=''或!==null)

图片.png

field列表出现聚合函数且查询不到 (此时判断为空用list[max] !=''或!==null)

图片.png

select():

select方法获取的是一个二维数组,底层一维数组以字段名为索引(字段名:字段值)。

查询不到时为不存在(未定义,前端无此传值也是) (此时判断为空用 empty(list)或):

图片.png

field列表出现聚合函数且查询不到

图片.png

getfield与field+select的区别():

getField方法是ThinkPHP中用来获取字段值的方法,区别于select和find方法,通常仅用于获取个别字段的值。但是事实上并没有那么简单,现将该方法的用法总结如下:

getfield详解:http://www.jb51.net/article/51330.htm

重点:

1,如果getField方法传入多个字段名称的话,默认返回一个关联数组,以第一个字段的值为索引(所/以第一个字段要尽量选择不会重复的)(字段值1:字段值2)。

2,只获取1个字段时,返回的是一个字符串结果。也就是说,即使有满足条件的多个字段,也只会返回一个结果。

3,只获取2个字段时,返回的是一个一维数组结果。也就是说,即使有满足条件的多个重复字段,也只会返回一个结果,后查询出的字段值代替先查询的字段值。

4,如果传入了2个以上的字段名,则返回一个二维数组(类似select方法的返回值,区别在于索引是二维数组的键名是第一个字段的值)

image.png

另外:

当field列表出现聚合函数(min,max,,,sum('字段1+字段2'))时find与select中field只能指定一个字段:

图片.png

如果是!==(绝对不等于时),null与''不相等,而!=时,相同,empty时,null,' ',0 均成立

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值