Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonでMySQLを使用するSQLLIKE演算子の使用について説明しますか?


LIKEはMySQLの演算子です。 LIKE演算子は、WHEREステートメントとともに使用され、テーブル内の特定のパターンを検索します。

表で「a」で始まる値を検索するとします。そのようなシナリオでは、LIKEステートメントが使用されます。

LIKE句で使用されるワイルドカード文字は2つあります。

  • %-この記号は、0、1、または複数の文字を表します。

  • _(アンダースコア)-これは1文字を表します。

「a%」のように -aで始まるすべての値を検索します。

「%a」のように -で終わるすべての値を検索します。

「_a%」のように -「a」が2番目の位置にあるすべての値を検索します。 _は単一の文字を表し、2番目の文字は「a」である必要があり、その後にいくつかの文字が存在するかどうかが示されます。

構文

SELECT * FROM table_name WHERE column_name LIKE pattern

PythonでMySQLを使用してテーブル内のパターンに基づいてデータを検索する際に必要な手順

  • MySQLコネクタをインポートする

  • connect()

    を使用してコネクタとの接続を確立します
  • cursor()メソッドを使用してカーソルオブジェクトを作成します

  • 適切なmysqlステートメントを使用してクエリを作成します

  • execute()メソッドを使用してSQLクエリを実行する

  • 接続を閉じます

次の「Students」という名前のテーブルを想定します-

学生

+----------+-----------+
|    name  |    marks  |
+----------+-----------+
|    Rohit |    62     |
|    Rahul |    75     |
|    Inder |    99     |
|   Khushi |    49     |
|    Karan |    92     |
+----------+-----------+

「K」で始まる生徒の名前を見つけたいのです。

import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

query="SELECT name FROM Students WHERE name LIKE 'K%' "
cursor.execute(query)
names=cursor.fetchall()
for x in names:
   print(x)

db.close()

上記のコードは、「K」で始まるテーブルからすべての名前をフェッチします。

出力

Karan
Khushi

同様に、上記のワイルドカードを任意の順序で使用して、さまざまなパターンに基づいて値を検索できます。


  1. SQLServerの+演算子

    この記事では、SQL Serverで+演算子を使用して、複数の文字列を1つの文字列に結合する方法について説明します。 説明 +演算子 SQL Serverでは、2つ以上の文字列を1つの大きな文字列に結合するために使用されます。 構文 SQL Serverで+演算子を使用するには、次の構文を使用します。 chuoi1 + chuoi2 + chuoi_n パラメータ : series1、chuoi2 、.サイクル :文字列は相互に接続したい。 注 : +演算子はCONCAT関数に似ています。 +演算子は、SQL Serverの新しいバージョン(SQL Server 2017、S

  2. Pythonの%演算子の関数を説明します。

    Pythonでは、%は除算の余りを返す算術演算子です。モジュロ演算子または剰余演算子と呼ばれ、複素数を除く数値オペランドを操作します >>> a=10 >>> a%3 1 >>> a%5 0 >>> b=12.5 >>> b%2.5 0.0 >>> b%2 0.5