组合两个sqldf语句
我已经试了一整天了。有人能帮我把下面的问题组合起来吗。我在下面得到了期望的结果,但我明白这应该在一个完成组合两个sqldf语句,sql,sqlite,subquery,sqldf,Sql,Sqlite,Subquery,Sqldf,我已经试了一整天了。有人能帮我把下面的问题组合起来吗。我在下面得到了期望的结果,但我明白这应该在一个完成 moo<-sqldf('SELECT id, count(id) AS idcount FROM MyData WHERE id IS not null GROUP BY id') sqldf("SELECT id, idcount FROM moo WHERE idcount = (SELECT min(idcount
moo<-sqldf('SELECT id, count(id) AS idcount
FROM MyData WHERE id IS not null
GROUP BY id')
sqldf("SELECT id, idcount FROM moo
WHERE idcount = (SELECT min(idcount) FROM moo)")
moo答案将取决于接收SQL的数据库,如果没有with
,则必须重复“moo”查询
在代码中这样做可能比在SQL中更好
如果dbms不支持,则:
答案将取决于接收SQL的数据库,如果不使用,则必须重复“moo”查询
在代码中这样做可能比在SQL中更好
如果dbms不支持,则:
“sql”是一种语言,但每个数据库供应商的实现方式不同,因此在询问与sql相关的问题时,始终包括它是什么dbmsfor@Used_By_Already由于代码在R中的sqldf语句中有默认设置,因此它应该是SQLite dbmsOK,请参见“sql”是一种语言,但每个db供应商的实现方式不同,因此,在询问与sql相关的问题时,一定要包括它是什么dbmsfor@Used_By_Already因为代码在R中的sqldf语句中有默认设置,所以它应该是一个SQLite dbmsOK,请参见WITH moo AS”(“这个括号没有关闭,但代码很完美。格雷西亚斯!抱歉,刚刚修复了这个问题。感谢您选择它。干杯。好的,就像min一样(idcount)我还需要一个max(idcount),是否可以将其包含在这个查询中。是的,我已经编辑了min和max的答案,基本上只是where子句中的一个OR条件,它非常漂亮这个括号没有关闭,但是代码很完美。格雷西亚斯!抱歉,刚刚修复了。谢谢你拿起它。干杯。好的,就像min(idcount)一样,我需要一个max(idcount)当然,我已经编辑了min和max的答案,基本上只是where子句中的一个OR条件,非常漂亮。
SELECT id, idcount
FROM (
SELECT id, count(id) AS idcount
FROM MyData WHERE id IS NOT NULL
GROUP BY id
) moo
WHERE idcount = (
SELECT min(idcount)
FROM (
SELECT id, count(id) AS idcount
FROM MyData WHERE id IS NOT NULL
GROUP BY id
)
OR idcount = (
SELECT max(idcount)
FROM (
SELECT id, count(id) AS idcount
FROM MyData WHERE id IS NOT NULL
GROUP BY id
)
WITH moo AS (
SELECT id, idcount
FROM (
SELECT id, count(id) AS idcount
FROM MyData WHERE id IS NOT NULL
GROUP BY id
)
)
SELECT id, idcount
FROM moo
WHERE idcount = (
SELECT min(idcount)
FROM moo)
OR idcount = (
SELECT max(idcount)
FROM moo)