我在SQL中有一个表。我有一个名为CarMakes
的列,它包含以下内容:
Mercedes, BMW
Range Rover
Mazda, Toyota, Honda
我想知道如何在每一行中返回一些CarMakes
。
返回值应分别为2,1和3。
答案 0 :(得分:1)
这是一个基于MySQL的答案,因此如果您使用其他内容,可能不适合您的情况。这假设值是逗号分隔的并且在同一列中(非常假设:)):
SELECT car, (LENGTH(car)-LENGTH(REPLACE(car, ',', ''))+1) AS 'Counts'
FROM CarMakes
我确定这会在某个地方遇到问题,但如果您的情况不包含随机逗号,它可能会有效。你可以看到SQLFiddle here。
答案 1 :(得分:0)
SELECT COUNT(CarMakes), CarMakes FROM cartable ORDER BY CarMakes ASC
答案 2 :(得分:0)
假设T-SQL / MS SQL Server,您有两个选择: