Mysql 如何为特定列选择行
我有一张这样的桌子:Mysql 如何为特定列选择行,mysql,sql,database,select,distinct,Mysql,Sql,Database,Select,Distinct,我有一张这样的桌子: ID Course1 Course2 S1 A1 A2 S1 A1 B1 S2 D1 B1 S2 C1 B1 ID Course1 Course2 S1 A1 A2 S2 D1 B1 我需要为每个ID选择第一行。我指的是这样一个表: ID Course1 Course2 S1 A1 A2 S1 A1
ID Course1 Course2
S1 A1 A2
S1 A1 B1
S2 D1 B1
S2 C1 B1
ID Course1 Course2
S1 A1 A2
S2 D1 B1
我需要为每个ID选择第一行。我指的是这样一个表:
ID Course1 Course2
S1 A1 A2
S1 A1 B1
S2 D1 B1
S2 C1 B1
ID Course1 Course2
S1 A1 A2
S2 D1 B1
如果有人能帮忙,我们将不胜感激。
谢谢你的例子,我想为每个ID选择第一行最简单的方法(imo)是按分组,你应该得到你想要的
选择*
从你的桌子上
按ID分组代码>
希望这对您有所帮助。数据库表中没有“第一行”这样的东西。SQL表表示无序集。你需要一个列来指定顺序。如果你能提供额外的上下文,那会很有帮助。你想写一个程序吗?如果是,用什么语言?你在使用工具吗?是的,我正在用python编写程序。你如何确定哪一行是“顶行”?您需要添加一个orderby
子句来指定哪一行是最上面的行。这通常是某种独特的ID或日期…尽管我在你的结构中没有看到任何类似的东西。