分组查询
在了解分组查询之前,我们需要先了解下 APIJSON 所支持的函数
函数名 | 说明 |
---|---|
count | 统计分组下,某字段的个数 |
sum | 统计分组下,某字段的和 |
max | 统计分组下,某字段的最大值 |
min | 统计分组下,某字段的最小值 |
avg | 统计分组下,某字段的平均值 |
比如,如果只是单纯的查出最大值,这样请求就可以了
{
"[]": {
"Moment": {
"@column": "max(id):maxid"
}
}
}
响应:
{
"[]": [
{
"Moment": {
"maxid": 1541912160047
}
}
],
"code": 200,
"msg": "success"
}
这里maxid
是我们取的别名
如果是有分组条件的,那我们需要使用@group
比如,像下面 SALE 表,这张表表示,2018 年 1 月 1 日某公司门下的 3 个店铺(STORE_ID)的营业额(AMT)数据
ID | STORE_ID | AMT |
---|---|---|
1 | 1 | 100 |
2 | 1 | 80 |
3 | 2 | 30 |
4 | 2 | 100 |
5 | 3 | 210 |
如果,我们想要计算出这天每个店铺一共卖了多少,我们通过 APIJSON 可以这样查询
{
"[]": {
"Sale":{
"@column":"store_id,sum(amt):totAmt",
"@group":"store_id"
}
}
}
登录
如果没有登录,由于权限的限制,是需要登录的。
登录地址http://127.0.0.1:8080/login
,发送请求
{
"phone": "13000038710",
"password": "apijson"
}
账号和密码,可以到apijson_user
里面查询
测试新增
接口地址:http://localhost:8080/post
我们想新增一条备注时,发送这样的请求
请求
{
"Moment": {
"content": "今天天气不错,到处都是提拉米苏雪",
"userId": 38710
},
"tag": "Moment"
}
tag
是我们在request
表里面配置的tag
字段。
响应
{
"Moment": {
"code": 200,
"count": 1,
"id": 1544520921923,
"msg": "success"
},
"code": 200,
"msg": "success"
}
返回的id
是新增的数据的新 id
测试修改
接口地址:http://localhost:8080/put
修改备注和新增类似
请求
{
"Moment": {
"id": 1544520921923,
"content": "海洋动物数量减少,如果非吃不可,不点杀也是在保护它们"
},
"tag": "Moment"
}
响应
{
"Moment": {
"code": 200,
"count": 1,
"id": 1544520921923,
"msg": "success"
},
"code": 200,
"msg": "success"
}
如果要对json
类型操作的话,这样请求
{
"Moment": {
"id": 1544520921923,
"praiseUserIdList+": [123]
},
"tag": "Moment"
}
这里的praiseUserIdList
是一个json
类型的字段,在操作之前它是空的[]
,提交以后它是[123]
,如果再添加一个 21,则会变成[123,21]
要删除其中的值,把+
变成-
即可
测试删除
接口地址:http://localhost:8080/delete
请求
{
"Moment": {
"id": 1544520921923
},
"tag": "Moment"
}