Sqlite 如何查找组中具有最大值的行?

Sqlite 如何查找组中具有最大值的行?,sqlite,Sqlite,我有一个db_表,看起来像这样: description external_id value highest sample_text1 123456 abc 0 sample_text2 125435 def 0 sample_text3 987654 abc 0 sample_text4 123456 def 0 sample_

我有一个db_表,看起来像这样:

description external_id value highest sample_text1 123456 abc 0 sample_text2 125435 def 0 sample_text3 987654 abc 0 sample_text4 123456 def 0 sample_text5 123456 ghj 0 description external_id value highest sample_text1 123456 abc 0 sample_text2 125435 def 1 sample_text3 987654 abc 1 sample_text4 123456 def 0 sample_text5 123456 ghj 1
您只想更新具有相同外部_id的最大值的行,即不存在具有相同外部_id但值较小的其他行的行:

更新MyTable 设置最高值=1 如果不存在,请选择* 从MyTable中选择T2 其中T2.external\u id=MyTable.external\u id T2.value你被困在哪里了?你试过什么?老实说。。。我从几天前开始学习sqlite3。。。我只知道如何创建表、写入日期表、忽略是否存在唯一值以及读取所有数据。但是像这样的比较。。。我真的不知道从哪里开始…非常感谢你的回答。事实上,我必须用谷歌来理解你的sqlite。因为我在sqlite方面还不是很先进。但sqlite如何知道什么更高?我如何定义它?。或者你的意思是什么?是的,但是abc def ghj通常排序为a在d之前,d在g之前,但是如果我有疯狂的值,比如:eb=2 af=3 xa=1,那么你需要用不同的方式比较它们。