select全部位置
这是我之前的一个跟进问题。 我想写一个mysql语句,以字母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?类别= B
<?php include 'includes/header.php' ?> <?php getCategory(); ?> <?php include 'includes/footer.php' ?>
就像我想的那样。 然后一个字母的每个字母,一个与杂项(数字等)
SELECT author FROM lyrics WHERE author LIKE 'B%';
确保你有一个author
索引,但!
这将适用于MYSQL
SELECT Name FROM Employees WHERE Name REGEXP '^[B].*$'
在这个REGEXP代表正则expression式
和
这是针对T-SQL的
SELECT Name FROM Employees WHERE Name LIKE '[B]%'
SQL语句:
SELECT * FROM employee WHERE employeeName LIKE 'A%';
结果:
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
在你的评论发布到ceejayoz的回答之后,有两件事情是乱七八糟的:
-
$first
不是数组,而是一个string。 将$first = $first[0] . "%"
replace$first = $first[0] . "%"
$first = $first[0] . "%"
由$first .= "%"
。 只是为了简单。 ( PHPstring运算符 ) -
应该引用与
LIKE
运算符进行比较的string。 用LIKE ".$first."")
LIKE '".$first."'")
replaceLIKE ".$first."")
LIKE '".$first."'")
。 ( MySQLstring比较函数 )
您可以使用:
WHERE LEFT (name_field, 1) = 'B';