我正在通过 mysql 连接器连接到 mysql 数据库并运行一个简单的查询来提取 ID 列表。我需要遍历该列表并将它们传递给其他一些代码。出于某种原因,我得到了一个元组列表。这是预期的行为吗?如果没有,我做错了什么?这是我的代码片段:
import mysql.connector
conn = mysql.connector.connect(host='127.0.0.1', database='t', user='r', password='pwd')
cursor = conn.cursor()
query = ( "select id from T where updated < '%s'" % (run_date) )
cursor.execute(query)
for row in cursor:
print (row)
cursor.close()
Run Code Online (Sandbox Code Playgroud)
我得到以下回复(来自 d/b 中的 INT 字段):
(Decimal('991837'),)
(Decimal('991838'),)
(Decimal('991839'),)
(Decimal('991871'),)
(Decimal('991879'),)
(Decimal('991899'),)
(Decimal('992051'),)
(Decimal('992299'),)
(Decimal('992309'),)
Run Code Online (Sandbox Code Playgroud) 我有一个包含 20 个不同字段的索引。我需要能够提取独特的文档,其中“cat”和“sub”字段的组合是独一无二的。在 SQL 中,它看起来是这样的:从表 A 中选择唯一的猫,子;我可以通过这种方式为一个领域做到这一点:
{
"size": 0,
"aggs" : {
"unique_set" : {
"terms" : { "field" : "cat" }
}
}}
Run Code Online (Sandbox Code Playgroud)
但是如何添加另一个字段来检查两个字段的唯一性?
谢谢,
我正在运行aggs查询并指定大小为100,但ES只返回10个桶.为什么?我错过了什么?
{
"size": 100
,"query": {
"bool": {
"must": [
{ "term": {"app": "cnn"} }
]
}
}
,"aggs": {
"unique_client": {
"terms": {"field": "client"}
}
}
}
Run Code Online (Sandbox Code Playgroud)