Seo建设网站的步骤市场营销培训

web/2025/10/4 6:03:41/文章来源:
Seo建设网站的步骤,市场营销培训,wordpress 3秒防刷,想在网站里添加超链接怎么做PostgreSQL jsonb jsonb 函数以及操作符 在PostgreSQL中#xff0c;有许多用于处理JSONB数据类型的内置函数和操作符。下面列出了一些常用的JSONB函数和操作符#xff1a; jsonb_pretty(jsonb) 该函数将JSONB数据格式化为易读的多行字符串。jsonb_typeof(jsonb) 该函数返回…PostgreSQL jsonb jsonb 函数以及操作符 在PostgreSQL中有许多用于处理JSONB数据类型的内置函数和操作符。下面列出了一些常用的JSONB函数和操作符 jsonb_pretty(jsonb) 该函数将JSONB数据格式化为易读的多行字符串。jsonb_typeof(jsonb) 该函数返回给定JSONB值的类型例如字符串、数值、布尔值、数组、对象等。jsonb_array_length(jsonb) 该函数返回JSONB数组的长度。jsonb_extract_path(jsonb, VARIADIC text[]) 该函数按路径提取JSONB对象中的值。路径可以是一个或多个键名。使用VARIADIC关键字可以根据需要传递任意数量的路径参数。jsonb_extract_path_text(jsonb, VARIADIC text[]) 该函数与jsonb_extract_path相似但它返回提取的值作为文本。jsonb_insert(jsonb, text[], jsonb[, boolean]) 该函数在给定的路径位置插入一个新的JSONB值。jsonb_set(jsonb, text[], jsonb[, boolean]) 该函数在给定的路径位置更新JSONB值。jsonb_delete(jsonb, VARIADIC text[]) 该函数删除JSONB对象中指定路径的键和对应的值。jsonb_strip_nulls(jsonb) 该函数从JSONB对象中删除所有值为NULL的键值对。jsonb_agg(jsonb) 该函数将多个JSONB值聚合为一个JSONB数组。jsonb_array_elements(jsonb) 该函数用于将JSON数组转换为行集以便对数组中的每个元素进行操作with ordinality 用于在查询中返回一个带有索引的结果集row_number 是 PostgreSQL 中的一个窗口函数用于为查询结果集中的每一行分配一个唯一的序号 除了上述函数之外还有一些操作符可用于JSONB类型的操作 - 该操作符按键提取JSONB对象中的值。- 该操作符返回提取的值作为文本。# 该操作符按路径提取JSONB对象中的值。 该操作符检查JSONB对象是否包含指定的键路径。 该操作符检查JSONB对象是否包含指定的键-值对。 jsonb 功能示例 是 PostgreSQL 中用于比较 JSONB 数据类型的操作符它用于判断一个 JSONB 值是否包含另一个 JSONB 值。它返回一个布尔值如果被比较的 JSONB 值包含了目标 JSONB 值中的所有键值对则返回 true否则返回 false。 使用示例 假设有一个名为 data 的 JSONB 列包含以下数据 {name: John,age: 30,address: {city: New York,country: USA} }我们可以使用 操作符来判断 data 列中是否包含某个特定的 JSONB 值。例如我们可以判断是否存在一个包含 “name”: “John” 的 JSONB 值 SELECT * FROM table_name WHERE data {name: John};这将返回包含 “name”: “John” 的 JSONB 值的所有行。 我们还可以判断是否存在一个包含特定键值对的 JSONB 值。例如我们可以判断是否存在一个包含 “address”: {“city”: “New York”} 的 JSONB 值 SELECT * FROM table_name WHERE data {address: {city: New York}};这将返回包含 “address”: {“city”: “New York”} 的 JSONB 值的所有行。 注意 操作符只能用于比较 JSONB 值不能用于比较 JSON 值。如果要比较 JSON 值可以使用 ::jsonb 强制将 JSON 转换为 JSONB 类型。 not 在 PostgreSQL 的 JSONB 中要判断一个 JSONB 对象是否不包含另一个 JSONB 对象可以使用 NOT 运算符和 运算符的组合。下面是一个示例代码 -- 创建一个表包含一个名为data的JSONB列 CREATE TABLE tb_user (id SERIAL PRIMARY KEY,data JSONB );-- 插入一些示例数据 INSERT INTO tb_user (data) VALUES({name: John, hobbies: [reading, sports]}::jsonb),({name: Jane, hobbies: [music, painting]}::jsonb);-- 查询不包含指定对象的数据 SELECT * FROM tb_user WHERE NOT data {name: John, hobbies: [reading, sports]}::jsonb;在查询中我们使用 NOT 运算符和 运算符的组合 表示包含关系NOT 表示取反。 jsonb_insert jsonb_insert函数的语法如下 jsonb_insert(target jsonb, path jsonpath, new_value jsonb, skip_existing boolean DEFAULT false)参数说明 target要插入对象的目标JSONB值。path指定要插入对象的路径。可以是一个JSONPath表达式也可以是一个由键组成的数组。例如{hobbies, -1}表示在名为hobbies的数组中的最后一个位置插入对象。new_value要插入的新对象。skip_existing可选参数表示如果插入的对象已经存在则是否跳过插入操作。默认值为false表示不跳过插入。 以下是一个示例演示如何使用jsonb_insert函数向JSONB数组中插入对象 -- 创建一个表包含一个名为data的JSONB列 CREATE TABLE tb_user (id SERIAL PRIMARY KEY,data JSONB );-- 插入一些示例数据 INSERT INTO tb_user (data) VALUES({name: John, hobbies: [reading, sports]}::jsonb),({name: Jane, hobbies: [music, painting]}::jsonb);-- 在hobbies数组中插入一个新的对象但如果对象已经存在则不进行插入 UPDATE tb_user SET data jsonb_insert(data, {hobbies}, {new_hobby: cooking}::jsonb, true) WHERE id 1;-- 查询更新后的数据 SELECT * FROM tb_user;jsonb_set jsonb_set 是 PostgreSQL 中的一个函数用于修改 JSONB 类型的值。它可以用于更新 JSONB 对象中的指定路径上的值或者在指定路径上插入新的键值对。 以下是 jsonb_set 函数的使用说明 语法 jsonb_set(target jsonb, path text[], new_value jsonb[, create_missing boolean])参数说明 target要修改的 JSONB 值。path指定要修改的路径以数组形式表示。每个数组元素都是一个键或索引用于定位 JSONB 值的位置。例如[‘a’, ‘b’, ‘c’] 表示要修改的路径为 target-‘a’-‘b’-‘c’。new_value要设置的新值必须是一个合法的 JSONB 值。create_missing可选参数指定是否在路径上创建缺失的键。默认情况下如果路径上的键不存在则不会创建缺失的键。如果设置为 true则会创建缺失的键。 示例 假设有一个名为 data 的 JSONB 对象内容如下 {name: John,age: 30,address: {city: New York,country: USA} }我们想要将 data 对象中的 age 字段修改为 35可以使用以下 SQL 查询 UPDATE table_name SET data jsonb_set(data, {age}, 35::jsonb) WHERE id 1;执行以上查询后data 对象中的 age 字段将被修改为 35。 注意事项 jsonb_set 函数返回一个新的 JSONB 值并不会直接修改原始的 JSONB 值。如果需要更新原始的 JSONB 值需要将返回的新值赋值给原始的 JSONB 列或变量。jsonb_set 函数只能在 UPDATE 查询中使用并且只能用于修改 JSONB 类型的列或变量。jsonb_set 函数只能修改已经存在的键值对无法用于删除键或修改键的名称。如果需要删除键或修改键的名称可以使用 jsonb 类型的其他函数如 jsonb_remove 或 jsonb_set 结合 jsonb_delete。jsonb_set 函数也可以用于插入新的键值对如果指定的路径不存在且 create_missing 参数设置为 true。 问题: 函数 jsonb_set(jsonb, text, unknown, boolean) 不存在 select jsonb_set([{name: Product A, price: 100},{name: Product B, price: 200},{name: Product C, price: 300} ]::jsonb, {||1||}, {name: Product B, price: 400}, false)报错 错误: 函数 jsonb_set(jsonb, text, unknown, boolean) 不存在 LINE 1: select jsonb_set([^ HINT: 没有匹配指定名称和参数类型的函数. 您也许需要增加明确的类型转换.jsonb_set 语法 jsonb_set(target jsonb, path text[], new_value jsonb[, create_missing boolean]) 需要将动态拼接的path转换为etext[]类型 select jsonb_set([{name: Product A, price: 100},{name: Product B, price: 200},{name: Product C, price: 300} ]::jsonb, ({||1||})::text[], {name: Product B, price: 400}, false)jsonb_array_elements 在PostgreSQL中jsonb_array_elements函数用于将JSON数组拆分为多行。它返回一个包含数组元素的结果集每个元素都在单独的行中。 以下是使用jsonb_array_elements的示例 select jsonb_array_elements([{name: Product A, price: 100},{name: Product B, price: 200},{name: Product C, price: 300} ]::jsonb)结果 {name: Product A, price: 100} {name: Product B, price: 200} {name: Product C, price: 300}在这个例子中我们将一个包含三个JSON对象的数组传递给jsonb_array_elements函数。函数将返回一个结果集其中每个对象的属性都在单独的行中。 使用jsonb_array_elements的基本语法如下 SELECT * FROM jsonb_array_elements(json_array)json_array是一个包含JSON数组的表达式或列名。jsonb_array_elements将返回一个结果集其中每个数组元素都在单独的行中表示。 可以使用jsonb_array_elements函数的结果集进行进一步的操作例如过滤、聚合或与其他表进行连接。 请注意jsonb_array_elements函数只适用于JSON数组。如果传递给函数的表达式不是有效的JSON数组将会抛出错误。 使用jsonb_array_elements可以方便地处理JSON数组的元素使其更容易进行查询和处理。 with ordinality 在PostgreSQL中WITH ORDINALITY用于在查询中返回一个带有索引的结果集。它通常与jsonb_array_elements函数一起使用以获取带有索引的JSON数组元素。 以下是使用WITH ORDINALITY的示例 SELECT * FROM jsonb_array_elements([{name: Product A, price: 100}, {name: Product B, price: 200}, {name: Product C, price: 300}]::jsonb) WITH ORDINALITY AS arr(elem, idx);结果 elem | idx --------------------------------------------- {name: Product A, price: 100} | 1 {name: Product B, price: 200} | 2 {name: Product C, price: 300} | 3在这个例子中我们使用jsonb_array_elements函数从JSON数组中提取元素并使用WITH ORDINALITY将结果集中的每个元素的索引添加到idx列中。结果集将包含两列elem包含提取的元素idx包含索引值。 使用WITH ORDINALITY的语法如下 SELECT * FROM 表名 WITH ORDINALITYWITH ORDINALITY关键字必须紧跟在要返回的结果集之前并且只能在FROM子句中的函数或子查询中使用。 请注意WITH ORDINALITY只适用于返回多个结果的函数或子查询如jsonb_array_elements函数。对于返回单个结果的函数或子查询WITH ORDINALITY没有任何影响。 使用WITH ORDINALITY可以方便地处理需要索引的结果集特别是在处理数组或其他有序集合时非常有用。 row_number ROW_NUMBER() OVER()是在PostgreSQL中用于为查询结果中的每一行分配一个唯一的行号的窗口函数。它可以与OVER子句一起使用以定义行号的分区和排序方式。 语法 row_number() OVER (PARTITION BY column1, column2, ... ORDER BY column1, column2, ...)参数说明 PARTITION BY可选参数用于指定分组的列。如果指定了分组列则 row_number 函数将在每个分组内进行计数每个分组都从 1 开始递增。如果不指定则将整个结果集作为一个分组。 ORDER BY可选参数用于指定排序的列。如果指定了排序列则 row_number 函数将根据排序规则为每一行分配序号。如果不指定则按照查询结果集的顺序分配序号。 示例 假设有一个名为 users 的表包含以下列id、name、age。我们想要为每个用户分配一个序号按照年龄从小到大排序。 SELECT id, name, age, row_number() OVER (ORDER BY age) as row_num FROM users;执行以上查询后将返回一个包含 id、name、age、row_num 列的结果集其中 row_num 列为每个用户分配的序号。 注意事项 row_number 函数在查询结果集中的每一行都会计算一次因此可能会对查询的性能产生影响。如果不需要计算序号可以考虑使用其他窗口函数如 rank 或 dense_rank。row_number 函数返回的序号是可重复的即如果有多个行具有相同的排序值则它们可能会被分配相同的序号。如果需要确保序号唯一可以考虑使用 rank 或 dense_rank 函数。row_number 函数只能在 SELECT 查询中使用并且只能在窗口函数中使用。 jsonb 场景示例 1. 匹配数组中对象修改数组中未知索引对象的字段值 -- 创建示例表 CREATE TABLE products (id serial primary key,details jsonb );-- 插入示例数据 INSERT INTO products (details) VALUES ([{name: Product A, price: 100},{name: Product B, price: 200},{name: Product C, price: 300} ]::jsonb);-- 查看原始数据 SELECT * FROM products;-- 修改数组对象中对象字段值 UPDATE products SET details jsonb_set(details, ({|| (SELECT index-1 FROM (SELECT jsonb_array_elements(details) WITH ORDINALITY arr(elem, index)) AS sub WHERE elem - name Product B) ||, price})::text[], 400, false) WHERE details [{name: Product B}];-- 查看修改后的数据 SELECT * FROM products;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/86629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

销售网站html源码郑州网站建设最低价

先在OrCAD软件 导出画好的图: 去PCBEditor软件: 画版图框框: 可以手动画也可以代码画,前提是使用line的操作。 命令画 x 0 0 x 1000 0 x 1000 1000 X 0 1000 X 0 0 就可以了 显示格点 修改格点: 导入…

做简单网站怎么做西安驾校网站建设

让 PHP 支持 MySQLPHP 有专有的 MySQL 函数库以使用操作 MYSQL 数据库。在 PHP 5 及以后版本中不再默认支持 MySQL ,所以在运行这些库之前,请确定 php.ini 加载了 MySQL 数据库支持:extension mysql.dllMySQL 连接mysql_connect() 函数用于开…

go 网站开发企业邮箱注册申请163免费

额尔古纳传说是蒙古祖先的发源地。这是通往那里的路标,用蒙古、汉、英、俄四种语言。8月的中俄国际象棋对抗赛将在这里举行。黑山头镇一个叫“卓娅”的饭店,里面有几个俄罗斯服务员,看着年龄都很小。这个站的姑娘叫“柳巴”,看着是…

网站设计人员白山北京网站建设

一、前言 接着前面的分析,接下来分析ConcurrentLinkedQueue,ConcurerntLinkedQueue一个基于链接节点的无界线程安全队列。此队列按照 FIFO(先进先出)原则对元素进行排序。队列的头部是队列中时间最长的元素。队列的尾部 是队列中时…

温州企业建站系统中国移动app免费下载

深度剖析几个经典话题,以图文的形式展现,好好看图。 目录 1. 2014互联网职场薪酬报告!你拖后腿了吗? 2. 月薪8K程序员现身说法:男人就该默默做技术! 3.项目建设 4. 2014年亿级用户下的新浪微博平台架构…

建网站的软件有哪些商业推广

Linux最危险的几个命令 Linux最危险的几个命令危险命令介绍删除文件和目录命令rmLinux 的 dd 命令mkfs 格式化硬盘分区shutdown> fileMore Linux最危险的几个命令 仅个人想法,会持续不间断更新和改进。 Linux系统中的命令最美妙也最危险。 如果几个操作系统&…

关于传媒的网站模板开发一个网站需要多少时间

1、概述 源码放在文章末尾 该项目实现了多种样式的导航按钮控件 可设置文字的左侧、右侧、顶部、底部间隔。 可设置文字对齐方式。 可设置显示倒三角、倒三角边长、倒三角位置、倒三角颜色。 可设置显示图标、图标间隔、图标尺寸、正常状态图标、悬停状态图标、选中状态图标…

一级a做爰片 网站就能看wordpress主题仿制

数据可视化的实现技术和工具比较转载于:https://www.cnblogs.com/knuzy/p/9215632.html

微信对接网站群wordpress 做值班表

想都是问题,做才是答案 什么是请求走私? HTTP请求走私是针对于服务端处理一个或者多个接收http请求序列的方式,进行绕过安全机制,实施未授权访问一种攻击手段,获取敏感信息,并直接危害其他用户。 Web 应用…

网站页面制作公司安装失败未能找到wordpress目录

如果大家看过我之前的文章,可能会有点映像,前面有提到过英国的双水龙头,有兴趣的朋友们可以点后面的直达链接查看:为什么在英国留学会掉头发?怎么办?英国的自来水(冷水)可以直接喝吗…

制作网站需要的技术与软件app下载汅api免费下载大全视频

针对Go语言的学习,不同阶段应采取不同的学习方式,以达到最佳效果.本文将Go的学习分为入门、实战、进阶三个阶段,下面分别详细介绍 一、社区 Go语言中文网 作为专注于Go语言学习与推广的平台,Go语言中文网为开发者提供了丰富的中…

电子商务网站建设与管理笔试用文本文档做网页

机器学习的过程中处理数据,会遇到数据可视化的问题. 大部分都是利用python的matplotlib库进行数据的可视化处理. plt.show() 默认都是输出.png文件,图片只要稍微放大一点,就糊的不行. 下面给出一段正常进行…

商品展示网站模板旅游最适合的城市

安卓有的apk 软件会不断更新。但有些用户需要旧版的有些功能或者新版功能增减原因等等。需要不更新继续使用。这类问题有的可以简单修改版本号来跳过更新。或者有的软件可以忽略。但对于某些无法跳过更新界面等等的apk。就需要深度反编译来去除软件的强制更新。 通过课程可以了…

网站公司设计wordpress站点地址无法更改

题目描述 给定一个数列,初始为空,请支持下面三种操作: 给定一个整数 x,请将 x 加入到数列中。输出数列中最小的数。删除数列中最小的数(如果有多个数最小,只删除 1 个)。 输入格式 第一行是一个…

建外贸网站哪个好网站建设公司该如何选择

Oracle 数据库中的全文搜索 0. 引言1. 整体流程2. 创建索引2-1. 创建一个简单的表2-2. 创建文本索引2-3. 查看创建的基础表 3. 运行查询3-1. 运行文本查询3-2. CONTAINS 运算符3-3. 混合查询3-4. OR 查询3-5. 通配符3-6. 短语搜索3-7. 模糊搜索(Fuzzy searches&…

手机站网站建设手机网站技巧

Spring是一款基于Java语言的轻量级开源应用框架,用于构建企业级应用程序。Spring框架拥有众多的功能模块,能够为开发者提供全面的解决方案,包括IoC容器、AOP、数据访问、Web开发、事务管理等。而MAC(Model-View-Controller、Agile…

青岛网站营销推广做设计开哪个素材网站的会员好

Form 组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则,并将 Form-Item 的 prop 属性设置为需校验的字段名即可。但是官网的示例只有普通日期类型的验证,没有时间范围的验证。 一开始,我认为时间时间范围的是一…

asp网站搭建教程vue前端可视化开发工具

文章目录 写在前面Tag题目来源解题思路方法一:迭代 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结构等内容进行回顾…

网站建设外包合同模板网站运营目的

在 JavaScript 开发中,我们经常需要处理对象数据,但有时这些对象可能包含一些空值或空对象。在处理数据时,通常需要将这些空值或空对象去除,以便得到更干净、更紧凑的数据结构。本文将介绍几种方法,教你如何去除 JavaS…

都江堰网站建设南京市建设执业资格中心网站

一、概述。 Hydra是一款非常强大的渗透工具,由著名的黑客组织THC开发的一款开源工具。 二、使用方法。 hybra基础语法: hydra 参数 IP 服务 参数: -l login 小写,指定用户名进行破解 -L file 大写,指定用户的用户名…