gpt4 book ai didi

android - 如果 SQL 表达式具有带 SUBSELECT 查询的 LENGTH 函数,则将其转换为 SQLite

转载 作者:太空狗 更新时间:2023-10-29 13:39:28 26 4
gpt4 key购买 nike

我知道在 SQLite 中,我们使用 LENGTH 函数而不是 len。但是当我想像这样将 LENGTH 函数与子查询一起使用时:

select length(select name from tblNames where name=1)

我收到一个错误。这是表达式的 Microsoft SQL 版本:

iif(len((select  BilgiAcik  from DigerBilg  where BilgTip=12  and BilgDgr=Cstr(Dr.Fr)))>0,( select  BilgiAcik  from DigerBilg  where BilgTip=12 and BilgDgr=Cstr(Dr.Fr)),Cstr(Dr.Fr))  as Fr,

我将上面的表达式转换成 SQLite:

(case length((select  BilgiAcik  from DigerBilg where BilgTip=12 and BilgDgr=CAST(Dr.Fr as TEXT))>0 ( select  BilgiAcik  from DigerBilg  where BilgTip=12 and BilgDgr=Cstr(Dr.Fr)) else CAST(Dr.Fr as TEXT) end) as Fr,

我做错了什么?我不能只将 SUBSELECT 查询与 LRNGTH 函数一起使用吗?关于如何解决这个问题有什么建议吗?

最佳答案

您需要重组您的陈述,使其更类似于以下内容。

select length(name) from (select name from tblnames where name=1);

如果愿意,您可以通过为子选择设置别名来更轻松地管理它。

select length(t.name) from (select name from tblnames where name=1) as t;

关于android - 如果 SQL 表达式具有带 SUBSELECT 查询的 LENGTH 函数,则将其转换为 SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7537823/

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