GraphQL
发表于|更新于
|浏览量:
可怕的不是外貌的丑陋,而是无法与人亲近的内心空虚——科恩
graphql是一个API的查询语言,可以理解为一个规范
正如它官方文档宣传的那样:
定义你的数据规范(数据类型)
Describe your data
1 | type Project { |
描述你想干什么(查询)
Ask for what you want
1 | { |
获得预期结果(只获得你需要的结果)
Get predictable results
1 | { |
它有多种语言的库:

相关推荐
2021-07-29
索引操作
一个人的礼貌是一面照出他的肖像的镜子。——歌德 自己整理的mysql对于索引操作的sql: 12345678910111213141516171819202122232425262728293031323334353637383940CREATE TABLE `user` ( -- 创建表时指定主键索引 `id` BIGINT ( 20 ) PRIMARY KEY NOT NULL COMMENT '主键', `gmt_create` datetime ( 0 ) NOT NULL COMMENT '创建时间', `gmt_modified` datetime ( 0 ) NOT NULL COMMENT '修改时间', `is_delete` TINYINT ( 1 ) NOT NULL DEFAULT 0 COMMENT '逻辑删除字段', `username` VARCHAR ( 32 ) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci U...
2021-12-29
orderBy排序,null在最后
优于别人,并不高贵,真正的高贵应该是优于过去的自己。——海明威 我们进行排序查询时: 1SELECT * FROM `user` ORDER BY username 可以看到null值排到了最上 如果我们要将null值排到最下方可以使用: 1SELECT * FROM `user` ORDER BY ISNULL(username),username 执行结果: 这是因为ISNULL函数将其转换为了0和1,我们可以顺带查询出来看看: 1SELECT *,ISNULL(username) FROM `user` ORDER BY ISNULL(username),username
2022-06-09
exists
发上开出了蔷薇,袖底是风,足下是莲。——顾城 我们可以使用exists代替in查询: 阿里编码规约第五条第(三)条第9条: 【推荐】in操作能避免则避免,若实在避免不了,需要仔细评估in后边的集合元素数量,控制在1000个之内。 我们可以在子元素多的情况下,使用exists查询 比如下面这个in查询 123456789101112SELECT * FROM sys_user AS a WHERE id in ( SELECT user_id FROM sys_user_role AS b WHERE b.role_id IN ( SELECT id FROM sys_role AS c WHERE b.role_id = c.id AND c.role_code LIKE '%o%' )); 可以改为: 12345678910111213SELECT * FROM sys_user AS a WHERE EXISTS ( SELECT user_id FROM sys_user_role AS b WHERE a.id = b.us...
2022-10-11
h2 count+orderBy踩坑
过度的爱情追求,必定会降低人本身的价值——培根 mysql里两个都可执行 h2执行第二条会报错 因此不要在h2写count时使用orderBy
2020-12-05
explain
人们很少做他们相信是对的事,他们做比较方便的事,然后后悔。——鲍勃.迪伦 使用explain+SQL 作用: 表的读取顺序 数据读取操作的操作类型 哪些索引可以使用 哪些索引被实际使用 表之间的引用 每张表有多少行被优化器查询 id select_type table partitions type possible_keys key key_len ref rows filtered Extra id:查询的序列号,包含一组数字,表示查询中执行select字句或操作表的顺序id值越大执行优先级越高,id相同情况下执行顺序从上到下 select_type:查询的类型,主要是用于区别普通查询、联合查询、子查询等的复杂查询simple简单的select查询,不包含子查询、UNION primary子查询的最外层 subquery子查询的内层 derived表示 FROM临时表,这个表被标记为衍生 union在union后面的查询,若union包含在from字句的子查询中,外层select被标记为derived union result从union表获取结果的select t...
2020-07-01
避免循环操作数据库
今天看到公司实习写的代码。。。 1234567for (Long id : ids) { //查询 TbGoods tbGoods = goodsMapper.selectByPrimaryKey(id); tbGoods.setIsDelete("1"); //逻辑删除 //修改 goodsMapper.updateByPrimaryKey(tbGoods); } 这是,循环操作数据库?! 晕。。。希望以后不再看到这样的代码。。。 我给他写了个mapper.xml里的sql,用 where id in()替代,这样只有一条sql语句了 1234567891011<!-- 根据主键查询数据 --> <select id="selectByPrimaryKeys" resultMap="BaseResultMap" parameterType="list&q...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog