可能重复:
How to get First and Last record from a sql query?字母顺序获得第一和最后一个字
我在MySQL数据库按字母顺序排序的话。我怎样才能得到字母表中每个字母的第一个和最后一个单词。
所以我们说,有在分贝以下的话:
空气 飞机 擅离职守 各地
我要连接的字母(第一和最后一句话所以在这种情况下,空气周围)。我想要得到以字母顺序排列的特定字母开头的单词。
可能重复:
How to get First and Last record from a sql query?字母顺序获得第一和最后一个字
我在MySQL数据库按字母顺序排序的话。我怎样才能得到字母表中每个字母的第一个和最后一个单词。
所以我们说,有在分贝以下的话:
空气 飞机 擅离职守 各地
我要连接的字母(第一和最后一句话所以在这种情况下,空气周围)。我想要得到以字母顺序排列的特定字母开头的单词。
尝试
select min(name)
from your_table
group by substring(name, 1, 1)
$str = "air airplane awol around";
$exp = explode(' ', $str);
$count = count($exp); // counting no. of items in array
$count = $count--; // reducing count by 1 because index starts from 0
$first = $exp[0]; // storing first word
$last = $exp[$count]; // storing last word
echo $first." - ".$last;
+1或者只是'$ lastword = $ exp [count($ exp)-1];' – Wh1T3h4Ck5 2012-07-31 16:45:40
你也会这样做......只是想让它更容易理解 – asprin 2012-07-31 16:46:22
提问者没有把它作为一个字符串,那些是数据库值。 。 。看起来他应该执行SQL查询以获取第一个和最后一个,并使用WHERE + LIKE子句来限制第一个字母,例如WHERE field like'A%' – ernie 2012-07-31 16:52:42
这是卓有成效的和非排序的数据工作为好,尽量
SELECT CONCAT(MIN(word),' - ',MAX(word))
FROM table
GROUP BY ASCII(LOWER(word))
它基本上取每个字母的按字母顺序排列第一和最后一个实例,连接它们。 ASCII(word)只是为一个单词的最左边的字母获得一个ASCII算术值,所以本质上它是按照单词或句子的每个第一个字母(或数字或符号)分组,并输出一个很好的“百科全书”像列表。
通过将分组更改为LOWER()进行轻微编辑,这样返回的列表不会为小写字母和大写首字母返回单独的行。 – gts 2012-07-31 17:40:42
或http://stackoverflow.com/a/4899070/1177083 – 4ndro1d 2012-07-31 16:41:51
您的示例与您想要完成的操作不符。在你的例子中,它应该是“空气”。 – Palladium 2012-07-31 16:48:25