Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQLite中,使用引用字段别名的子选择,MySQL语句的等效值是什么_Mysql_Sqlite_Subquery - Fatal编程技术网

在SQLite中,使用引用字段别名的子选择,MySQL语句的等效值是什么

在SQLite中,使用引用字段别名的子选择,MySQL语句的等效值是什么,mysql,sqlite,subquery,Mysql,Sqlite,Subquery,这个问题看起来比问题本身更复杂。这里是一个例子。 我在MySQL中有一个“Test”表,只有一个字段:ObjectId INTEGER(10)。 ObjectId字段中的值: 1 1 1 2 2 我在MySQL查询浏览器中执行以下语句: SELECT DISTINCT ObjectId obid, (SELECT count(*) FROM Test WHERE ObjectId = obid) AS cnt FROM Test 结果是我所期望的:在上面的示例中,有两行包含: 第1列:Obje

这个问题看起来比问题本身更复杂。这里是一个例子。 我在MySQL中有一个“Test”表,只有一个字段:ObjectId INTEGER(10)。 ObjectId字段中的值:
1
1
1
2
2

我在MySQL查询浏览器中执行以下语句:

SELECT DISTINCT ObjectId obid, (SELECT count(*) FROM Test WHERE ObjectId = obid) AS cnt FROM Test
结果是我所期望的:在上面的示例中,有两行包含:
第1列:ObjectId值
第2列:各ObjectId值在该列中出现的次数。

现在,我在SQLite数据库中创建的相同表(结构和数据)上执行相同的语句。我得到一个错误告诉“没有这样的专栏:欧比德”

上述选择对我来说非常方便。被迫用一系列的选择(比如使用光标)来替换它看起来有点奇怪。我是SQLite的新手,所以我可能错过了一些东西。我做了很多调查,结果都是零

那么,有没有人知道是否有一个类似的、单一的SELECT语句会在SQLite数据库上产生相同的结果


谢谢

你做得很复杂。:)你应该得到你想要的

SELECT ObjectID AS obid, COUNT(1) AS cnt
FROM Test
GROUP BY ObjectID

你的做法很复杂。:)你应该得到你想要的

SELECT ObjectID AS obid, COUNT(1) AS cnt
FROM Test
GROUP BY ObjectID

谢谢galador,你说得绝对正确,它很有效,而且简单得多。我应该重新考虑我复杂的方式:)谢谢加拉多,你完全正确,它有效,而且更简单。我应该重新考虑我复杂的方式:)