2012-08-14 30 views
0

我有字典数据库和我已创建了一个UI界面,按字母顺序放置按钮,在每个字母的点击,我想在字母系列获取从字典数据库中每个字母系列指数

是获取第一个字有任何技巧或SQL查询,我可以列出,每个系列的第一个字对它的索引

注:我也有,数据库中的每个单词索引列。

回答

1

对于SQL Server。

select ID, 
     Word 
from 
    (
    select ID, 
     Word, 
     row_number() over(partition by left(Word, 1) order by Word) as rn 
    from YourTable 
) as T 
where rn = 1 

SE-Data

+0

很酷,它的工作 – Pradeep 2012-08-14 09:53:46

0

尝试:

word like '<letter>%' 

例如:

word like 'a%' 
word like 'b%' 
+0

但后来我需要把所有的字母从A到Z?任何比这更短的 – Pradeep 2012-08-14 09:21:19

0

我认为这是你在找什么:

SELECT * 
FROM table_name 
WHERE word LIKE 'a%'; 

搜索栏添加索引将有助于提高性能:

ALTER TABLE table_name add key ix1(word); 

或使用REGEXP您可以搜索多个字符:

WHERE word REGEXP '^[a-d]'; 
+0

但这只会列出一个系列,我想每个系列的第一个字对它的索引 – Pradeep 2012-08-14 09:22:46

+0

然后你可以尝试'REGEXP' – Omesh 2012-08-14 09:24:17