Like most data types, strings can be compared for equality or inequality or relative ordering. However, strings have some additional properties to consider:
This chapter discusses several useful string operations you can perform, including how to account for whether or not strings are case sensitive.
The following table, metal, is used in several sections of this chapter:
mysql> SELECT * FROM metal; +----------+ | name | +----------+ | copper | | gold | | iron | | lead | | mercury | | platinum | | silver | | tin | +----------+
The table is very simple, containing only a single string column:
CREATE TABLE metal ( name VARCHAR(20) );
You can create the table using the metal.sql script in the tables directory of the recipes distribution.
4.1.1 Types of Strings
MySQL can operate on regular strings or binary strings. "Binary" in this context has little to do with the presence of non-ASCII values, so it's useful right at the outset to make a distinction:
A binary column type is one that contains binary strings. Some of MySQL's column types are binary (case sensitive) and others are not, as illustrated here:
Column type |
Binary/case sensitive |
---|---|
CHAR, VARCHAR |
No |
CHAR BINARY, VARCHAR BINARY |
Yes |
TEXT |
No |
BLOB |
Yes |
ENUM, SET |
No |
Using the mysql Client Program
Writing MySQL-Based Programs
Record Selection Techniques
Working with Strings
Working with Dates and Times
Sorting Query Results
Generating Summaries
Modifying Tables with ALTER TABLE
Obtaining and Using Metadata
Importing and Exporting Data
Generating and Using Sequences
Using Multiple Tables
Statistical Techniques
Handling Duplicates
Performing Transactions
Introduction to MySQL on the Web
Incorporating Query Resultsinto Web Pages
Processing Web Input with MySQL
Using MySQL-Based Web Session Management
Appendix A. Obtaining MySQL Software
Appendix B. JSP and Tomcat Primer
Appendix C. References