通过sql查询切割数据
每个SQL的味道,我曾与有子功能:
Oracle,MySQL,PostgreSQL,SQLite:
SELECT SUBSTR(column, 1, 30) FROM table;
SELECT SUBSTRING(column, 1, 30) FROM table;
或者,你可以使用LEFT
功能,这是由一些DB的支持:
SELECT LEFT(column, 30) FROM table;
当然,你可以使用列别名,像:
SELECT SUBSTR(column, 1, 30) AS partial FROM table;
SELECT SUBSTRING(column, 1, 30) AS partial FROM table;
我记得多亏了你.. –
小细节,SQL Server在位置1开始SUBSTRING。0可以工作,但是你会得到少于1的字符 – Sparky
@Sparky谢谢,实际上他们都使用1作为起始字符; Oracle将0视为1。 – NullUserException
在MySQL中字符串的起点为1,所以你应该使用
SELECT SUBSTR(column, 1, 30) FROM table;
SELECT LEFT(数据,30)FROM MyTable的
SUBSTRING(数据,1,30)适用于大多数SQL方言。你使用的是什么版本的SQL? – Sparky
选择子字符串(例如1,50)作为cut FROM表。这是真的? –
是的,看起来像你有一个解决方案 – Sparky