2013-02-19 56 views
78

好的,所以这里是问题所在。MySQL选择查询 - 只获得一个值的前10个字符

我有一个表,有一些列和'主题'是其中的一列。 无论'主题'字段包含一个包含100个字母的字符串,我都需要从'主题'字段中获得前10个字母。

例如,

表 - tbl。 列 - id,subject,value

SQL查询:

SELECT subject FROM tbl WHERE id ='$id'; 

我不饶人,例如结果

您好,这是我的主题,你怎么样

我只需要第一10个字符

你好,thi

我可以理解,我可以删除其余的字符使用php substr()但这不可能在我的情况。我需要获取由MySQL删除的多余字符。如何才能做到这一点?

回答

172

使用下面的线

SELECT LEFT(subject , 10) FROM tbl 

MySQL Doc.

+0

谢谢,它的工作:) – getvivekv 2013-02-19 14:08:42

+4

@getvivekv - 很乐意帮忙,如果答案适合你,请把它标记为一个答案 – MuhammadHani 2013-02-19 14:18:50

+0

感谢,它为我工作。 – 2016-04-27 09:54:05

14

看一看要么LeftSubstring如果你需要更多的砍起来。

谷歌和MySQL文档是一个很好的开始 - 如果你在提问前没有试图自助,你通常不会得到如此热烈的回应。

+6

+1的回答和建议的方式。 – MuhammadHani 2013-02-19 13:57:18

+2

样本会更有帮助。 – 2014-03-11 14:46:23

+5

@RoccoTheTaco我完全不同意 - 也是你的倒票非常苛刻。阅读“http:// stackoverflow.com/questions/how-to-ask”,第一点是“在问你的问题之前你是否彻底搜索过答案?”。这个问题很容易通过简单快速的Google搜索来回答。我不只是想给OP提供我想给他们看的答案如何找到答案 - 在我看来,更多*更有用。 – Steve 2014-03-11 16:42:25

17
SELECT SUBSTRING(subject, 1, 10) FROM tbl