首页 > 解决方案 > 如何选择一个单词的字母不同的多行?

问题描述

标题可能令人困惑,但我试图从 173k 个单词的表中逐个字母地选择一个不同的单词列表的解决方案也是如此。

我已经尝试选择不同的字母,在 mariadb 10.1.37 上运行

SELECT DISTINCT LEFT(word, 1)

例如,SELECT 不应包含超过 1 个以“A”开头的单词。

示例表(因为很难理解)

╔═══════════╦═════════╗
║    Word   ║  Result ║
╠═══════════╣   ----  ║
║  Charlie  ║   Ava   ║
╠═══════════╣  Bianca ║
║   Caddie  ║ Charlie ║
╠═══════════╣         ║
║ Brooklynn ║         ║
╠═══════════╣         ║
║    Ava    ║         ║
╠═══════════╣         ║
║ Alexander ║         ║
╠═══════════╣         ║
║   Bianca  ║         ║
╚═══════════╩═════════╝

标签: mysql

解决方案


GROUP BY您可以在第一个字符上使用 a 来使用以下解决方案:

SELECT MIN(word) FROM table_name GROUP BY LEFT(word, 1)

您可以使用MINMAX获取每个组的第一个或最后一个单词。

演示联合国 dbfiddle.uk


推荐阅读