MySQL select 其中前三个字母不同
MySQL select where first three letters are different
是否可以做一个 select 语句,它只 returns 结果是你select输入的单词的前三个字母不同?
例如,如果 select russian from info where english = 'defense';
产生这些结果
обороне,оборонного,оборонное
那我能不能说
select russian from info where english = 'defense' and where first three letters are not 'обо';
例如,这只会导致。
`обороне'
下面是 table 的示例。
id, english, russian
1 defense обороне
2 defense оборонного
3 defense оборонное
4 defense другой
我想要其中一个以 обо 开头的结果,我还想要 другой
你可以做到
select russian from table where english = 'defense' and english not like 'обо%';
您可以按 english
和 russian
的前 3 个字符和 return russian
的最小值进行分组:
SELECT english, MIN(russian) russian
FROM info
GROUP BY english, LEFT(russian, 3)
参见demo。
结果:
english
russian
defense
обороне
defense
другой
是否可以做一个 select 语句,它只 returns 结果是你select输入的单词的前三个字母不同?
例如,如果 select russian from info where english = 'defense';
产生这些结果
обороне,оборонного,оборонное
那我能不能说
select russian from info where english = 'defense' and where first three letters are not 'обо';
例如,这只会导致。 `обороне'
下面是 table 的示例。
id, english, russian
1 defense обороне
2 defense оборонного
3 defense оборонное
4 defense другой
我想要其中一个以 обо 开头的结果,我还想要 другой
你可以做到
select russian from table where english = 'defense' and english not like 'обо%';
您可以按 english
和 russian
的前 3 个字符和 return russian
的最小值进行分组:
SELECT english, MIN(russian) russian
FROM info
GROUP BY english, LEFT(russian, 3)
参见demo。
结果:
english | russian |
---|---|
defense | обороне |
defense | другой |