programing

[첫 글자가 B로 시작]에서 모두 선택합니다.

itsource 2022. 9. 24. 23:46
반응형

[첫 글자가 B로 시작]에서 모두 선택합니다.

이것은 이전 질문의 후속 질문입니다.문자 B로 시작하는 모든 엔트리를 메아리치는 MYSQL 스테이트먼트를 쓰고 싶습니다.

기능.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' ?>

그런 것 같아요.알파벳 글자마다 하나씩, 숫자(숫자 등)가 있는 것도 있습니다.

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

인덱스가 설정되어 있는지 확인합니다.author그래도!

이것은 MYSQL에 유효합니다.

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

이 REGEXP에서는 정규 표현을 나타냅니다.

그리고.

이것은 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

다음을 사용할 수 있습니다.

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

ceejayoz의 답변에 대한 당신의 코멘트에 따라, 두 가지가 조금 뒤죽박죽입니다.

  1. $first배열이 아니라 문자열입니다.교체하다$first = $first[0] . "%"타고$first .= "%"단순함을 위해 (PHP 문자열 연산자)

  2. 비교되는 문자열LIKE연산자는 따옴표로 묶어야 합니다.교체하다LIKE ".$first."")타고LIKE '".$first."'"). (MySQL 문자열 비교 함수)

언급URL : https://stackoverflow.com/questions/10156965/select-all-where-first-letter-starts-with-b

반응형