大家好。
我在 mySql 查询方面遇到了一个小问题。假设我们有一个表,其中的值是成对的,但在同一字段中统一,所以像这样:
id | serviceName
----+-------------
1 | foo - bar
2 | foo - doo
3 | foo - tep
4 | bee - bar
5 | bee - blo
我想选择不同的 serviceName 的第一部分,在本例中为 foo、bee。
所需的输出应该是:
foo
bee
在结果集中。
我现在的想法是制作一个SELECT DISTINCT a FROM REPLACE ((SELECT serviceName as a FROM tableName), ' - ***', '')
但我不太确定这是否可能,以及如何实现。我只想选择该字段的第一部分,并且我只想选择它的不同值......这可能吗?我需要一个正确的方向指向,我可以自己研究。
提前致谢。
最佳答案
假设您总是想在破折号 -
上进行分割,这应该适合您。
SELECT DISTINCT LEFT(serviceName, LOCATE('-', serviceName) - 2) FROM tableName;
关于mysql - 选择替换的选定结果的不同值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23156757/