insert into t_user values(4,'u1234567890');

sqlite> select substr(username,1,1) from t_user where user_id = 4;

u

sqlite> select substr(username,0,1) from t_user where user_id = 4;

 

sqlite>

为什么会产生这样的结果呢?因为substr里的第二个参数是从1开始的,而非传统的c语言从0开始,记住这一点即可.

返回输入字符串X中以第Y个字符开始,Z个字符长的子串。 X最左端的字符序号为1。若Y为负,则从右至左数起。若SQLite配置支持UTF-8,则“字符”代表的是UTF-8字符而非字节。