これを使用してください:
SELECT x.id,
x.position,
x.name
FROM (SELECT t.id,
t.name,
@rownum := @rownum + 1 AS position
FROM TABLE t
JOIN (SELECT @rownum := 0) r
ORDER BY t.name) x
WHERE x.name = 'Beta'
...一意の位置の値を取得します。これ:
SELECT t.id,
(SELECT COUNT(*)
FROM TABLE x
WHERE x.name <= t.name) AS position,
t.name
FROM TABLE t
WHERE t.name = 'Beta'
...ネクタイに同じ値を与えます。 IE:2番目に2つの値がある場合、最初のクエリで一方に2の位置、もう一方に3の位置が与えられると、両方の位置は2になります...