Reputation: 825
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)
Upvotes: 70
Views: 306487
Reputation: 21
You can also try
SELECT author FROM lyrics WHERE author LIKE BINARY 'N%' ORDER BY id ASC
Upvotes: 0
Reputation: 303
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
Upvotes: 11
Reputation: 201
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]%'
Upvotes: 20
Reputation: 3748
Following your comment posted to ceejayoz's answer, two things are messed up a litte:
$first
is not an array, it's a string. Replace $first = $first[0] . "%"
by $first .= "%"
. Just for simplicity. (PHP string operators)
The string being compared with LIKE
operator should be quoted. Replace LIKE ".$first."")
by LIKE '".$first."'")
. (MySQL String Comparison Functions)
Upvotes: 2
Reputation: 180023
SELECT author FROM lyrics WHERE author LIKE 'B%';
Make sure you have an index on author
, though!
Upvotes: 124