Select all where [first letter starts with B]

Mysql

Mysql Problem Overview


This is a follow up question to my previous one. I want to write a MYSQL statement that echoes every entry that starts with letter B.

Function.php

function getCategory() {
$query = mysql_query("SELECT author FROM lyrics WHERE author [starts with letter B]") or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) { ?>
	<p><a href="##"><?= $row['author']; ?></a></p>
	<?php }

Category.php?category=b

<?php include 'includes/header.php' ?>
<?php getCategory(); ?>
<?php include 'includes/footer.php' ?>

Like that I guess. And then one for every letter of the alphabet, and one with misc (numbers etc)

Mysql Solutions


Solution 1 - Mysql

SELECT author FROM lyrics WHERE author LIKE 'B%';

Make sure you have an index on author, though!

Solution 2 - Mysql

This will work for MYSQL

SELECT Name FROM Employees WHERE Name REGEXP '^[B].*$'

In this REGEXP stands for regular expression

and

this is for T-SQL

SELECT Name FROM Employees WHERE Name LIKE '[B]%'

Solution 3 - Mysql

SQL Statement:

 SELECT * FROM employee WHERE employeeName LIKE 'A%';

Result:

Number of Records: 4

employeeID	employeeName	employeeName	Address	City	PostalCode	Country

1	        Alam	         Wipro	        Delhi 	Delhi   11005      India

2	        Aditya	         Wipro	        Delhi 	Delhi   11005      India

3	        Alok	         HCL	        Delhi 	Delhi   11005      India

4	        Ashok	         IBM	        Delhi 	Delhi   11005      India

Solution 4 - Mysql

You can use:

WHERE LEFT (name_field, 1) = 'B';

Solution 5 - Mysql

Following your comment posted to ceejayoz's answer, two things are messed up a litte:

  1. $first is not an array, it's a string. Replace $first = $first[0] . "%" by $first .= "%". Just for simplicity. (PHP string operators)

  2. The string being compared with LIKE operator should be quoted. Replace LIKE ".$first."") by LIKE '".$first."'"). (MySQL String Comparison Functions)

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionuser1333327View Question on Stackoverflow
Solution 1 - MysqlceejayozView Answer on Stackoverflow
Solution 2 - MysqlBhanu JoshiView Answer on Stackoverflow
Solution 3 - MysqlWaseem AhmadView Answer on Stackoverflow
Solution 4 - MysqlsqluckView Answer on Stackoverflow
Solution 5 - MysqlTazView Answer on Stackoverflow