thinkphp5从数据中筛选字段,由中文字母进行排序
- 方法一
$brand = db('wb_brand')->orderRaw('convert(name using gbk)')->select();
- 方法二
正确的写法应该使用这篇文章《TP5多字段排序》中的方法,TP中的一个类,超级简单超级好用。
//实例化这个类,并在实例化的时候传入你需要的排序规则
$exp = new Expression(‘field(table1.field1,null),field(table2.field2,null),convert(table3.field3 using gbk) asc,table4.field4 desc’);
//这里是示例代码,具体需要根据自己的业务逻辑进行修改
l
i
s
t
=
M
o
d
e
l
:
:
j
o
i
n
(
′
t
a
b
l
e
2
t
2
′
,
′
t
1.
i
d
=
t
2.
i
d
′
,
′
L
E
F
T
′
)
−
>
j
o
i
n
(
′
t
a
b
l
e
3
t
3
′
,
′
t
1.
i
d
=
t
3.
i
d
′
,
′
L
E
F
T
′
)
−
>
j
o
i
n
(
′
t
a
b
l
e
4
t
4
′
,
′
t
4.
i
d
=
t
3.
i
d
′
)
−
>
f
i
e
l
d
(
′
你
需
要
的
字
段
′
)
−
>
o
r
d
e
r
R
a
w
(
list = Model::join('table2 t2', 't1.id = t2.id','LEFT') ->join('table3 t3', 't1.id = t3.id','LEFT') ->join('table4 t4','t4.id = t3.id') ->field('你需要的字段') ->orderRaw(
list=Model::join(′table2t2′,′t1.id=t2.id′,′LEFT′)−>join(′table3t3′,′t1.id=t3.id′,′LEFT′)−>join(′table4t4′,′t4.id=t3.id′)−>field(′你需要的字段′)−>orderRaw(exp)
->with([‘这里我进行了关联关系查询,不需要的可以用写’])->where(‘查询条件’);
这样多字段排序就完成了,不知道有没有人注意到
我并没有使用order,而是使用了orderRaw,为什么呢?我们来看看官方文档
当你的order排序中使用了SQL函数的时候,请使用orderRaw方法替代order
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片: 
带尺寸的图片: ![]()
居中的图片: 
居中并且带尺寸的图片: ![]()
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.
// An highlighted block
var foo = 'bar';
本文介绍在ThinkPHP5中实现多字段排序的方法,包括使用convert函数进行中文字母排序,以及通过Expression类实现复杂排序规则。文章提供示例代码,展示了如何在联表查询中应用这些排序技巧。
5832

被折叠的 条评论
为什么被折叠?



