最初のクエリ数値データ:
SELECT * FROM tb_name WHERE sum > 100;
クエリ述語:>,=,<,<>,!=,!>,!<,=>,=<
2 番目のクエリ文字列
SELECT * FROM tb_stu WHERE sname = '小刘' SELECT * FROM tb_stu WHERE sname like '刘%' SELECT * FROM tb_stu WHERE sname like '%程序员' SELECT * FROM tb_stu WHERE sname like '%PHP%'
日付データに対する 3 つのクエリ
SELECT * FROM tb_stu WHERE date = '2011-04-08'
注: データベースが異なると、日付データに違いがあります: :
(1)MySQL:SELECT * from tb_name WHERE Birthday = '2011-04-08'
(2)SQL Server :SELECT * from tb_name WHERE 誕生日 = '2011-04-08'
(3) Access:SELECT * from tb_name WHERE 誕生日 = #2011-04-08#
4 つのクエリ論理データ
SELECT * FROM tb_name WHERE type = 'T' SELECT * FROM tb_name WHERE type = 'F'
論理演算子: and or not
空ではないデータに対する 5 つのクエリ
SELECT * FROM tb_name WHERE address <>'' order by addtime desc
注: <> PHP の !=
に相当します
変数を使用した数値データに対する 6 つのクエリ
SELECT * FROM tb_name WHERE id = '$_POST[text]'
注: 変数を使用してデータをクエリする場合は、SQL を渡しますPHP の文字列が数値データに接続されている場合、プログラムは自動的に数値データを文字列に変換し、それらを接続する文字列に接続するため、引用符で囲む必要はありません
7. 変数を使用して文字をクエリする文字列データ
SELECT * FROM tb_name WHERE name LIKE '%$_POST[name]%'
完全一致メソッド「%%」は、任意の位置に出現できることを意味します
Eight は最初の n レコードをクエリします
SELECT * FROM tb_name LIMIT 0,$N;
limit ステートメントは、order by ステートメントなどの他のステートメントと組み合わせて使用されます、および SQL ステートメントが使用されます 常に変更されるため、プログラムは非常に柔軟になります
クエリ後に 9 つのレコード
SELECT * FROM tb_stu ORDER BY id ASC LIMIT $n
指定された位置から始まる n レコードをクエリする 10 件
SELECT * FROM tb_stu ORDER BY id ASC LIMIT $_POST[begin],$n
注: データの ID は次から始まります0
11 クエリ統計 結果の最初の n レコード
SELECT * ,(yw+sx+wy) AS total FROM tb_score ORDER BY (yw+sx+wy) DESC LIMIT 0,$num
Twelve 指定された期間のデータをクエリ
SELECT 検索されるフィールド FROM テーブル名 WHERE フィールド名 BETWEEN 初期値 AND 終了値
SELECT * FROM tb_stu WHERE age BETWEEN 0 AND 18
13 月ごとに統計データをクエリします
SELECT * FROM tb_stu WHERE month(date) = '$_POST[date]' ORDER BY date ;
注: SQL 言語には、年、月、日ごとに簡単にクエリするために使用できる次の関数が用意されています
year(data): 西暦の年と分に対応する値を返します。データ式
month(data): データ式の月と分に対応する値を返します
day(data): データ式の日付に対応する値を返します
指定された条件より大きいレコードに対する 14 個のクエリ
SELECT * FROM tb_stu WHERE age>$_POST[age] ORDER BY age;
15 クエリ結果には重複レコードは表示されません
SELECT DISTINCT フィールド名 FROM テーブル名 WHERE クエリ条件
注: SQL ステートメント内の DISTINCT は WHERE 句と組み合わせて使用する必要があります。そうしないと、出力情報は変更されません。フィールドは * で置き換えることはできません
16. NOT と述語の結合条件クエリ
(1) NOT BERWEEN … AND … 開始値と終了値の間のデータに対する行クエリは、<開始値 and= に変更できます。 "> 終了値
(2)IS NOT NULL null 以外の値のクエリ
(3)IS NULL null 値のクエリ
(4)NOT IN この式は、使用されるキーワードがリストに含まれる、またはリストから除外される 検索式は定数または列名にすることができ、列名は定数のセットにすることもできますが、多くの場合はサブクエリになります
Seventeen は重複レコードとその数を表示しますデータテーブル内のレコード
SELECT name,age,count(*) ,age FROM tb_stu WHERE age = '19' group by date
降順/昇順クエリ用の 18 組のデータ
SELECT フィールド名 FROM tb_stu WHERE 条件 ORDER BY フィールド DESC 降順
SELECT フィールド名 FROM tb_stu WHERE 条件 ORDER BY フィールド ASC 昇順
注:フィールドを並べ替えるときに並べ替え方法が指定されていない場合、デフォルトは ASC 昇順です
データに対する 19 個の複数条件クエリ
SELECT フィールド名 FROM tb_stu WHERE 条件 ORDER BY フィールド 1 ASC フィールド 2 DESC ...
注: 複数のクエリ情報の条件ソートはレコードの出力を一括して制限するものですが、この場合は単一の条件に制限されないため、出力効果に多少の差異が生じます。
統計結果をソートするための 20 個
関数 SUM([ALL] フィールド名) または SUM([DISTINCT] フィールド名) は、関数が ALL の場合、このフィールドのすべてのレコードを合計します。 、DISTINCT の場合は、このフィールド内のすべての一意のレコードのフィールドを合計します。 例:
SELECT * FROM tb_name ORDER BY mount DESC,price ASC
21 の単一列データのグループ化統計
SELECT id,name,SUM(price) AS title,date FROM tb_price GROUP BY pid ORDER BY title DESC
注:当分组语句group by排序语句order by同时出现在SQL语句中时,要将分组语句书写在排序语句的前面,否则会出现错误
二十二多列数据分组统计
多列数据分组统计与单列数据分组统计类似
SELECT *,SUM(字段1*字段2) AS (新字段1) FROM 表名 GROUP BY 字段 ORDER BY 新字段1 DESC
SELECT id,name,SUM(price*num) AS sumprice FROM tb_price GROUP BY pid ORDER BY sumprice DESC
注:group by语句后面一般为不是聚合函数的数列,即不是要分组的列
二十三多表分组统计
SELECT a.name,AVG(a.price),b.name,AVG(b.price) FROM tb_demo058 AS a,tb_demo058_1 AS b WHERE a.id=b.id GROUP BY b.type;