Using Len() in a Select Statement

By Damian Maclennen on 1 August 2001 | Tags: Queries


Maya writes "My select statement returns a resultset with one field, 'ResultText'. I would like to get a length of that field. Is there a way in SQL to do it like in Visual Basic ?"

Yes Maya, there are two ways of doing this.

The first is the Len() function which works just like Visual Basic's Len() function.

Use Pubs

SELECT Title, Len(Notes) as LengthOfNotes from Titles

Will produce


The Busy Executive's Database Guide			101
Cooking with Computers: Surreptitious Balance Sheets	76
You Can Combat Computer Stress!				119
Straight Talk About Computers				91
Silicon Valley Gastronomic Treats			52
The Gourmet Microwave					72
The Psychology of Computer Cooking			NULL
....

As you can see, the Len of a NULL value is NULL.

Datalength()

If you try to use len() on a Text field, you will get an error Argument data type text is invalid for argument 1 of len function.

The answer to this is the Datalength() function which will return the length of any expression. This can be used on all data types including text, ntext, image and varbinary.

Hope that clears it all up.

Merkin


Related Articles

Using Dynamic SQL in Stored Procedures (7 March 2011)

Joining to the Next Sequential Row (2 April 2008)

Writing Outer Joins in T-SQL (11 February 2008)

Aggregating Correlated Sub-Queries (23 October 2007)

How to Use GROUP BY with Distinct Aggregates and Derived tables (31 July 2007)

How to Use GROUP BY in SQL Server (30 July 2007)

Returning Complex Data from User-Defined Functions with CROSS APPLY (11 June 2007)

Returning a week number for any given date and starting fiscal month (2 May 2007)

Other Recent Forum Posts

How to set a variable from a table with comma? (14h)

SSRS Expression IIF Zero then ... Got #Error (1d)

Understanding 2 Left Joins in same query (2d)

Use a C# SQLReader to input an SQL hierarchyid (2d)

Translate into easier query/more understandable (2d)

Aggregation view with Min and Max (3d)

Data file is Compressed - Cannot Re-Attach, Cannot Restore (3d)

Sql trigger assign value to parameter (6d)

- Advertisement -