gpt4 book ai didi

如果加入 SQLite 棘手

转载 作者:行者123 更新时间:2023-12-03 17:11:09 26 4
gpt4 key购买 nike

我有以下两个表:

T1(身份证,名字)T2 (id,hybrid_col)

我想做的是从 T2 中选择所有内容,如果 hybrid_col 是数字,则使用 T1 加入。基本上,hybrid_col 持有对 T1 的 id 引用(在这种情况下我想从 T1 获取名称)或文本字符串(在这种情况下我只想要 hybrid_col)。

请问我该怎么做?

谢谢。

最佳答案

另一种方法是将两种情况联合起来:

SELECT id, hybrid_col
FROM T2
WHERE hybrid_col+0!=hybrid_col
UNION
SELECT T2.id,t1.name
FROM T2 INNER JOIN T1 ON T2.hybrid_col=T1.id;

如果 hybrid_col 与 T1.ID 匹配,则无需检查它是否为数字。如果 T1.ID 始终是数字,则非数字将被排除在连接之外。

编辑:要对它们进行排序,封装结果并对其进行排序:

SELECT ID, VALUE
FROM
(
SELECT id as "ID", hybrid_col as "Value"
FROM T2
WHERE hybrid_col+0!=hybrid_col
UNION
SELECT T2.id as "ID",t1.name as "Value"
FROM T2 INNER JOIN T1 ON T2.hybrid_col=T1.id
) Q
ORDER BY ID;

还有其他方法,例如将结果通过管道传输到临时表中并进行查询,但以上可能是最简单的单查询方法。

关于如果加入 SQLite 棘手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6932099/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com