- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的 json 输出:
{
"kind": [
{
"inventory": "",
"inventory_sources": "",
"job_templates": "",
"workflow_job_templates": "104"
},
{
"inventory": "",
"inventory_sources": "",
"job_templates": "114",
"workflow_job_templates": ""
},
{
"inventory": "24",
"inventory_sources": "",
"job_templates": "",
"workflow_job_templates": ""
},
{
"inventory": "",
"inventory_sources": "108",
"job_templates": "",
"workflow_job_templates": ""
}
]
}
我想显示包含特定值的所有项目名称。例如,对于搜索值 104
,我想获取键名称 workflow_job_templates
我测试了一些语法但没有成功:
- debug:
msg: "104 is {{kind|json_query(query)}}"
vars:
query: "[?*==`104`].workflow_job_templates"
我知道这是错误的,但有人可以告诉我他自己会怎么做吗?
最佳答案
json_query
可能是您的解决方案等式的一部分,但这里实际上不需要。
下面这段代码的解释:
dict2items
过滤器应用于列表中的每个元素。这会将每个映射转换为 {key: "key", value: "value"}
对列表key
属性 - name: Display all element having a value of 104
debug:
msg: "{{ kind | map('dict2items') | flatten
| selectattr('value', '==', '104')
| map(attribute='key') | unique | sort }}"
请注意,如果相同的键名称具有不同的值,但其中一个是“104”,则此解决方案将为您提供结果。根据您的上述数据,结果是:
TASK [Display all element having a value of 104] ***************************************************************************************************************************************************************************************
ok: [localhost] => {
"msg": [
"workflow_job_templates"
]
}
关于ansible - 如何使用 json_query 过滤器提取所有等于某个值的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65903446/
我在 OSX 上运行 ansible 2.4.0。以下剧本... --- - hosts: localhost connection: local gather_facts: False
这让我发疯,我不明白我的方法有什么问题。 我在 SQL 中生成一个 JSON 对象,如下所示: select @output = ( select distinct lng
我想从 Microsoft SQL Server 数据库中 JSON 字符串内的数组中提取信息。 如果我有一个这样的 JSON 对象: CREATE TABLE myTable([Id] int, [
这是我的 json 输出: { "kind": [ { "inventory": "", "inventory_sources"
这是我的 json 输出: { "kind": [ { "inventory": "", "inventory_sources"
如果从子查询(或左连接)中选择的值为空,我如何返回一个返回 NULL(或根本没有属性)的 JSON_QUERY? 这是一个简单的例子(假设下面的 NULL 是一个子查询): SELECT JS
我正在尝试遍历键列表以从一些 json 中获取关联的名称: - name: show names debug: msg: "{{ data.json | json_query(query)
我正在尝试解析来自以下 JSON 的数据。我知道 JSON_VALUE 和 JSON_QUERY 之间存在差异,但我只是想使路径结构正确。我正在使用 STRICT 选项来验证我的路径,到目前为止,除了
是否可以根据变量动态定义 JSON_QUERY 中的路径表达式? DECLARE varpath varchar(180):= 'testvar1.testattribute'; BEGIN
我正在尝试遍历键列表以从一些 json 中获取关联的名称: - name: show names debug: msg: "{{ data.json | json_query(query)
我需要在 json_query 过滤器中传递一个变量。 此示例使用固定字符串,工作正常 (string=tutu): - set_fact: my_value_exist: "{{ my_json.
我在包含 json 对象的用户表中有一个 JSON blob 列(例如组),如下所示: {Security:[1,5],Reporting:[2,8]} 如果我尝试使用 JSON_QUERY 查询该表
我是一名优秀的程序员,十分优秀!