28

これは非常に簡単だと思いますが、理解できないようです。データベースから、タイトルがA、B、Cなどで始まるすべてのタイトルを選択する必要があります。これが私が試したことです。遠い:

SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A'

しかし、何も返しません..誰かがこれで私を助けることができますか?

乾杯

4

5 に答える 5

61

「A」で始まるタイトルの場合は%A

SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'

文字「A」が含まれるタイトルの場合は%A

SELECT * FROM weblinks WHERE catid = 4 AND title LIKE '%A%'

文字「A」で終わるタイトルの場合%は、A

SELECT * FROM weblinks WHERE catid = 4 AND title LIKE '%A'

基本的%にはワイルドカードです。それはMySQLに何でもその場所にあることができることを伝えます。

最初の文字として数字を使用するには、マークの回答を確認してください。

于 2010-01-15T03:04:23.840 に答える
7

既存の回答は、Aで始まる場合は正しいです。

SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'

任意の数値で始める場合は、REGEXP演算子を使用できます。

SELECT * FROM weblinks WHERE catid = 4 AND title REGEXP '^[0-9]'
于 2010-01-15T03:23:56.033 に答える
7

のワイルドカードはLIKEare%_、です。ここで、%は0個以上の文字に一致し、_は正確に1文字に一致します。

于 2010-01-15T03:05:46.113 に答える
2

試す:

SELECT * FROM weblinks WHERE catid = 4 AND ((title like 'A%') OR (title like 'B%'))

などなど

于 2010-01-15T03:04:44.427 に答える
1

SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'

%は「何でも」と言うので、「A」、それから何でもです。LIKE比較演算子でのみ機能します。

于 2010-01-15T03:04:14.443 に答える