AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-651174

David542's questions

Martin Hope
David542
Asked: 2025-03-03 07:03:47 +0800 CST

如何在 mysql.connector 中初始化 dict 游标[重复]

  • 4
此问题这里已有答案:
python mysql.connector DictCursor? (5 个答案)
昨天休息。

我以前可以做类似的事情:

self.conn = MySQLdb.connect(user=...)
self.dict_cursor = self.conn.cursor(MySQLdb.cursors.DictCursor)

但是,现在有了新的 mysql-python 连接器,事情就没那么简单了。我该如何用类似的模式来初始化 dict 游标?

self.conn = mysql.connector.connect(user=...)
self.dict_cursor = self.conn ???
python
  • 1 个回答
  • 38 Views
Martin Hope
David542
Asked: 2025-02-11 11:25:39 +0800 CST

排序是否在子选择中传递

  • 6

以下是否是 SQL 标准中的确定性行为?

SELECT *
FROM (
    SELECT *
    FROM myTable
    ORDER BY name ASC
)

或者在子选择中“order-by”基本上被丢弃了吗?当然,“正确”的做法是将其放在ORDER BY外部选择中。但是,在我的用例中,最终用户向我传递了一个已经创建的 SQL 语句,我必须将其包装在添加一些额外行为的子选择中。

sql
  • 4 个回答
  • 73 Views
Martin Hope
David542
Asked: 2025-01-07 06:08:25 +0800 CST

是否有任何语言允许函数名称中有空格?

  • 1

通常,函数标记是普通标识符 ( [A-z_][0-9A-z_]*) 或其某种变体。是否有任何语言支持包含空格的带引号的函数名称?例如:

`my function`(x,y,z)  # using back-tick quoting
parsing
  • 1 个回答
  • 49 Views
Martin Hope
David542
Asked: 2024-12-21 09:12:14 +0800 CST

为什么词法分析器通常将 var 定义为不能以数字开头?

  • 6

标记_123jh和123jh导致大多数词法分析器不包含以数字开头的标识符之间的区别是什么?我猜一个原因可能是纯数字标记可能会造成混淆,因此完全消除前导数字比允许类似以下内容更容易:

^(\d+[A-z_][A-z_0-9]*|[_A-z][A-z0-9]*)$。

或者还有其他原因(也许词法分析器无法保证以这种方式进行单字符前瞻)?

parsing
  • 1 个回答
  • 42 Views
Martin Hope
David542
Asked: 2024-09-20 03:51:23 +0800 CST

按发生次数计数

  • 5

我有一个类似的查询:

select * 
from combined 
where valid_rating is null
   order by FIND_IN_SET(provider, 
    (select provider 
     from combined 
     where valid_rating is null group by provider order by count(1) desc)
   )

基本上,我试图先按“最重要的”排序provider(项目数最多的)。我该如何使用order_by子句中的表达式正确地做到这一点,甚至可能使用窗口函数?

sql
  • 2 个回答
  • 25 Views
Martin Hope
David542
Asked: 2024-08-30 06:16:09 +0800 CST

除了显示附加字段

  • 4

假设我有两个表(来自上传的 csv 文件),我想根据新文件中的 id+territory 进行差异分析,而旧文件中没有。最简单的方法是:

SELECT id, territory FROM this_week EXCEPT SELECT id, territory FROM last_week

但是,我试图获取由该差异生成的所有字段(在两个表中 - 每个键一行)。如何做到这一点?

postgres 或 bigquery 都可以。两者都有EXCEPTset op。


来自 Erwin 答案的数据示例:

WITH this_week (id,territory,name,other) AS (VALUES(1,'us','titanic','uhd'),(22,'us','spider','hd'),(3,'fr','new','hd')),
     last_week (id,territory,name,other) AS (VALUES(1,'us','titanic','uhd'),(2,'us','spider','hd'))
SELECT *  -- all columns of "this_week"
FROM   this_week t
WHERE  NOT EXISTS (
   SELECT * FROM last_week l
   WHERE  t.id = l.id
   AND    t.territory = l.territory
   );
  • 2 个回答
  • 50 Views
Martin Hope
David542
Asked: 2024-07-27 06:41:23 +0800 CST

有什么方法可以添加虚假的“ORDER BY”吗?

  • 5

为了方便调试,我经常添加一个错误的谓词,如下所示:

SELECT ...
WHERE 1=1
    AND/OR predicate1
    AND/OR predicate2
    ...etc

这样,我可以注释掉一行或多行,而我的查询仍然有效。有没有办法1=1对 执行等效操作ORDER BY?例如,??在以下内容中填写:

SELECT ...
WHERE ...
ORDER BY ???,
   sort1,
   sort2, 
   ...

我相信几乎所有主流数据库引擎都会进行优化,但我想知道对于故意虚假的1=1它是否会做同样的事情?ORDER BY

sql
  • 1 个回答
  • 37 Views
Martin Hope
David542
Asked: 2024-06-25 04:15:40 +0800 CST

为单个函数添加“日志”

  • 5

我需要调试一些遗留代码,并且只想将一些信息打印到不会干扰代码库中任何其他位置的文件中。到目前为止,我发现的最粗暴的方法是这样的:

def my_func():
    f = open('/tmp/log.txt', 'a') # help with logging stuff
    f.write('Here is my crude local logger.')
    # some code
    logger.log('Hello') # our 'Normal logger' that goes to Splunk
                        # so I don't think I can modify this 
                        # safely without side-effects?

但是,我喜欢日志模块添加的所有“额外”内容,例如行号、时间、功能等。添加本地记录器来执行普通记录器可以执行的操作的最佳方法是什么?

python
  • 2 个回答
  • 40 Views
Martin Hope
David542
Asked: 2024-04-17 03:24:09 +0800 CST

按列分区,按另一列排序

  • 6

我正在使用以下值模拟 SQL 查询:

rows = [(1, '2021/04', 'Shop 2', 341227.53), (2, '2021/05', 'Shop 2', 315447.24), (3, '2021/06', 'Shop 1', 1845662.35), (4, '2021/04', 'Shop 2', 21487.63), (5, '2021/05', 'Shop 1', 1489774.16), (6, '2021/06', 'Shop 1', 52489.35), (7, '2021/04', 'Shop 1', 154552.82), (8, '2021/05', 'Shop 2', 6548.49), (9, '2021/06', 'Shop 2', 387779.49)]

我想建立一个“窗口”函数的字典。它应该在第三列(前值:“shop1”)上进行分区,并按第二列(前值:“2021/06”)排序。

所以,它应该看起来像这样:

{
    'Shop 1': ['2021/04', '2021/05', ...],
    'Shop 2': [...],
    ...
}

有没有办法做到这一点,这样我就可以定义一个带有两个参数的 lambda 函数,例如:

window_func = lambda partition_func, order_func: ...

上面的partition_func内容是item[2], order_func 是item[3]。

python
  • 1 个回答
  • 36 Views
Martin Hope
David542
Asked: 2024-01-25 06:48:11 +0800 CST

如果列名为 rowid,如何检索 rowid?

  • 5

假设我有下表:

CREATE or replace TABLE t (id INT, content STRING, rowid INT);
INSERT INTO t VALUES (42, 'hello', 5), (43, 'world', 5);

如何获取数据库中的rowid伪列和实际列?rowid

例如,做类似的事情:

select id, content, rowid, ?rowid-pseudocolumn?
from t;

参考: https: //docs.oracle.com/cd/B19306_01/server.102/b14200/pseudocolumns008.htm

另外,一般来说,如果存在“影子列”,如果存在同名用户列,是否有任何程序可以检索该列?

oracle
  • 2 个回答
  • 33 Views
Martin Hope
David542
Asked: 2023-10-08 09:55:06 +0800 CST

使用递归 CTE 在 BigQuery 中获取文件路径

  • 6

我有以下两个表来提供每个用户拥有的文件路径:

create temp table object as (
  select 1 id, 'MyFile1' name union all
  select 2 id, 'MyFile2' name union all
  select 3 id, 'MyFolder' name union all
  select 4 id, 'SomeFile' name union all
  select 5 id, 'Hello' name
);
create temp table path as (
  select 1 user_id, 1 object_id, NULL parent_folder union all
  select 1 user_id, 2 object_id, NULL parent_folder union all
  select 1 user_id, 3 object_id, NULL parent_folder union all
  select 1 user_id, 4 object_id, 3 parent_folder union all
  select 2 user_id, 5 object_id, NULL parent_folder union all
  select 2 user_id, 1 object_id, NULL parent_folder
);

例如,对于 user-1,他的目录结构如下所示:

MyFile1
MyFile2
MyFolder/
    SomeFile

我正在尝试构建一个递归 cte,以便它显示用户及其路径。以下是查询应返回的内容:

user_id           path
1                 MyFile1
1                 MyFile2
1                 MyFolder
1                 MyFolder/SomeFile
2                 Hello
2                 MyFile1

我目前有以下工作查询,但想知道是否可以在可读性或性能方面改进它:

create temp table object as (
  select 1 id, 'MyFile1' name union all
  select 2 id, 'MyFile2' name union all
  select 3 id, 'MyFolder' name union all
  select 4 id, 'SomeFile' name union all
  select 5 id, 'Hello' name
);

create temp table path as (
  select 1 user_id, 1 object_id, NULL parent_folder union all
  select 1 user_id, 2 object_id, NULL parent_folder union all
  select 1 user_id, 3 object_id, NULL parent_folder union all
  select 1 user_id, 4 object_id, 3 parent_folder union all
  select 2 user_id, 5 object_id, NULL parent_folder union all
  select 2 user_id, 1 object_id, NULL parent_folder
);

WITH RECURSIVE all_paths AS (
    SELECT user_id, id, name AS path FROM path JOIN object ON path.object_id=object.id WHERE parent_folder IS NULL
    UNION ALL
    SELECT all_paths.user_id, null, CONCAT(all_paths.path, '/', object.name) 
    FROM all_paths JOIN path ON all_paths.id = path.parent_folder join object ON path.object_id=object.id
) SELECT * FROM all_paths ORDER BY user_id, path

在此输入图像描述

  • 1 个回答
  • 33 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    重新格式化数字,在固定位置插入分隔符

    • 6 个回答
  • Marko Smith

    为什么 C++20 概念会导致循环约束错误,而老式的 SFINAE 不会?

    • 2 个回答
  • Marko Smith

    VScode 自动卸载扩展的问题(Material 主题)

    • 2 个回答
  • Marko Smith

    Vue 3:创建时出错“预期标识符但发现‘导入’”[重复]

    • 1 个回答
  • Marko Smith

    具有指定基础类型但没有枚举器的“枚举类”的用途是什么?

    • 1 个回答
  • Marko Smith

    如何修复未手动导入的模块的 MODULE_NOT_FOUND 错误?

    • 6 个回答
  • Marko Smith

    `(表达式,左值) = 右值` 在 C 或 C++ 中是有效的赋值吗?为什么有些编译器会接受/拒绝它?

    • 3 个回答
  • Marko Smith

    在 C++ 中,一个不执行任何操作的空程序需要 204KB 的堆,但在 C 中则不需要

    • 1 个回答
  • Marko Smith

    PowerBI 目前与 BigQuery 不兼容:Simba 驱动程序与 Windows 更新有关

    • 2 个回答
  • Marko Smith

    AdMob:MobileAds.initialize() - 对于某些设备,“java.lang.Integer 无法转换为 java.lang.String”

    • 1 个回答
  • Martin Hope
    Fantastic Mr Fox msvc std::vector 实现中仅不接受可复制类型 2025-04-23 06:40:49 +0800 CST
  • Martin Hope
    Howard Hinnant 使用 chrono 查找下一个工作日 2025-04-21 08:30:25 +0800 CST
  • Martin Hope
    Fedor 构造函数的成员初始化程序可以包含另一个成员的初始化吗? 2025-04-15 01:01:44 +0800 CST
  • Martin Hope
    Petr Filipský 为什么 C++20 概念会导致循环约束错误,而老式的 SFINAE 不会? 2025-03-23 21:39:40 +0800 CST
  • Martin Hope
    Catskul C++20 是否进行了更改,允许从已知绑定数组“type(&)[N]”转换为未知绑定数组“type(&)[]”? 2025-03-04 06:57:53 +0800 CST
  • Martin Hope
    Stefan Pochmann 为什么 {2,3,10} 和 {x,3,10} (x=2) 的顺序不同? 2025-01-13 23:24:07 +0800 CST
  • Martin Hope
    Chad Feller 在 5.2 版中,bash 条件语句中的 [[ .. ]] 中的分号现在是可选的吗? 2024-10-21 05:50:33 +0800 CST
  • Martin Hope
    Wrench 为什么双破折号 (--) 会导致此 MariaDB 子句评估为 true? 2024-05-05 13:37:20 +0800 CST
  • Martin Hope
    Waket Zheng 为什么 `dict(id=1, **{'id': 2})` 有时会引发 `KeyError: 'id'` 而不是 TypeError? 2024-05-04 14:19:19 +0800 CST
  • Martin Hope
    user924 AdMob:MobileAds.initialize() - 对于某些设备,“java.lang.Integer 无法转换为 java.lang.String” 2024-03-20 03:12:31 +0800 CST

热门标签

python javascript c++ c# java typescript sql reactjs html

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve