MySQL:查詢條件

查詢條件

1、使用 WHERE 子句從數據表中讀取數據的通用語法:
SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • 查詢語句中你可以使用一個或者多個表,表之間使用逗號**,** 分割,并使用WHERE語句來設定查詢條件。
  • 你可以在 WHERE 子句中指定任何條件。
  • 你可以使用 AND 或者 OR 指定一個或多個條件。
  • WHERE 子句可以運用于 SQL 的 SELECT 、DELETE 或者 UPDATE 命令。
  • WHERE 子句類似于程序語言中的 if 條件,根據 MySQL 表中的字段值來讀取指定的數據。

以下為操作符列表,可用于 WHERE 子句中。

下表中實例假定 A 為 10, B 為 20

操作符描述實例
=等號,檢測兩個值是否相等,如果相等返回true(A = B) 返回false。
<>, !=不等于,檢測兩個值是否相等,如果不相等返回true(A != B) 返回 true。
>大于號,檢測左邊的值是否大于右邊的值, 如果左邊的值大于右邊的值返回true(A > B) 返回false。
<小于號,檢測左邊的值是否小于右邊的值, 如果左邊的值小于右邊的值返回true(A < B) 返回 true。
>=大于等于號,檢測左邊的值是否大于或等于右邊的值, 如果左邊的值大于或等于右邊的值返回true(A >= B) 返回false。
<=小于等于號,檢測左邊的值是否小于或等于右邊的值, 如果左邊的值小于或等于右邊的值返回true(A <= B) 返回 true。

如果我們想在 MySQL 數據表中讀取指定的數據,WHERE 子句是非常有用的。

使用主鍵來作為 WHERE 子句的條件查詢是非常快速的。

如果給定的條件在表中沒有任何匹配的記錄,那么查詢不會返回任何數據。


2、使用 LIKE 子句從數據表中讀取數據的通用語法:
SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • 你可以在 WHERE 子句中指定任何條件。
  • 你可以在 WHERE 子句中使用LIKE子句。
  • 你可以使用LIKE子句代替等號 =
  • LIKE 通常與 % 一同使用,類似于一個元字符的搜索。
  • 你可以使用 AND 或者 OR 指定一個或多個條件。
  • 你可以在 DELETE 或 UPDATE 命令中使用 WHERE…LIKE 子句來指定條件。

3、MySQL UNION 操作符

MySQL UNION 操作符用于連接兩個以上的 SELECT 語句的結果組合到一個結果集合中。多個 SELECT 語句會刪除重復的數據。

MySQL UNION 操作符語法格式:

SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];
  • expression1, expression2, … expression_n: 要檢索的列。
  • tables: 要檢索的數據表。
  • WHERE conditions: 可選, 檢索條件。
  • DISTINCT: 可選,刪除結果集中重復的數據。默認情況下 UNION 操作符已經刪除了重復數據,所以 DISTINCT 修飾符對結果沒啥影響。
  • ALL: 可選,返回所有結果集,包含重復數據。

4、SELECT 語句使用 ORDER BY 子句將查詢數據排序后再返回數據:
SELECT field1, field2,...fieldN FROM table_name1, table_name2...
ORDER BY field1 [ASC [DESC][默認 ASC]], [field2...] [ASC [DESC][默認 ASC]]
  • 你可以使用任何字段來作為排序的條件,從而返回排序后的查詢結果。
  • 你可以設定多個字段來排序。
  • 你可以使用 ASC 或 DESC 關鍵字來設置查詢結果是按升序或降序排列。 默認情況下,它是按升序排列。
  • 你可以添加 WHERE…LIKE 子句來設置條件。

5、GROUP BY 語句根據一個或多個列對結果集進行分組。

在分組的列上我們可以使用 COUNT, SUM, AVG,等函數。

GROUP BY 語法

SELECT column_name, function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/535699.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/535699.shtml
英文地址,請注明出處:http://en.pswp.cn/news/535699.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux下的ImageMagick安裝

檢查系統有無安裝ImageMagick官方網址是&#xff1a; www.imagemagick.org 從官方不好下載&#xff0c;提供 sourceforge的下載地址&#xff1a; imagemagick.sourceforge.net shell> rpm -qa | grep ImageMagick 沒有就開始安裝ImageMagickshell> rpm -Uvh ImageMagi…

MySQL:進階應用

一、進階應用 1、可以在 SELECT, UPDATE 和 DELETE 語句中使用 Mysql 的 JOIN 來聯合多表查詢。 JOIN 按照功能大致分為如下三類&#xff1a; INNER JOIN&#xff08;內連接,或等值連接&#xff09;&#xff1a;獲取兩個表中字段匹配關系的記錄。**LEFT JOIN&#xff08;左連…

Hive-常用操作

一. 數據庫操作 1、創建數據庫 //用戶可以用 IF NOT EXISTS 選項來忽略這個異常。create database [ if not exists ] myhive ;2、創建數據庫并指定hdfs存儲位置 create database myhive2 location /myhive2;3、修改數據庫&#xff0c;可以使用alter database 命令來修改數據…

linux下nmap工具的使用

nmap NMap&#xff0c;也就是Network Mapper&#xff0c;是Linux下的網絡掃描和嗅探工 具包&#xff0c;其基本功能有三個&#xff0c;一是探測一組主機是否在線&#xff1b;其次是掃描主機端口&#xff0c;嗅探所提供的網絡服務&#xff1b;還可以推斷主機所用的操作系統 。N…

Hive-分區分桶概述

一、分區 簡介 為了對表進行合理的管理以及提高查詢效率&#xff0c;Hive可以將表組織成“分區”。 分區是表的部分列的集合&#xff0c;可以為頻繁使用的數據建立分區&#xff0c;這樣查找分區中的數據時就不需要掃描全表&#xff0c;這對于提高查找效率很有幫助。 分區是…

定時提醒你休息的腳本

本文來源于阿里西西WEB開發社區http://www.alixixi.com收集整理&#xff0c;歡迎訪問。 定時彈窗提醒功能腳本..把以下代碼存為.vbs運行即可. 以下是引用片段&#xff1a;set WshShell WScript.CreateObject("WScript.Shell") ’對話框標題 alerttitle "你的…

Hive-分區分桶操作

在大數據中&#xff0c;最常用的一種思想就是分治&#xff0c;我們可以把大的文件切割劃分成一個個的小的文件&#xff0c;這樣每次操作一個小的文件就會很容易了&#xff0c;同樣的道理&#xff0c;在hive當中也是支持這種思想的&#xff0c;就是我們可以把大的數據&#xff0…

ubuntu好文收集

ubuntu全程配置手冊 http://ljlau.blogdriver.com/ljlau/1220277.html ubuntu下向系統日志寫記錄 http://linux0818.bokee.com/viewdiary.14153197.html aptitude 使用快速參考 http://linuxtoy.org/archives/aptitude_quick_reference.html

Flume簡單介紹

在一個完整的離線大數據處理系統中&#xff0c;除了HDFSMapReduceHive組成分析系統的核心之外&#xff0c;還需要數據采集、結果數據導出、任務調度等不可或缺的輔助系統&#xff0c;而這些輔助工具在hadoop生態體系中都有便捷的開源框架&#xff0c;在此&#xff0c;我們首先來…

linux系統優化篇之---top

top命令是Linux下常用的性能分析工具&#xff0c;能夠實時顯示系統中各個進程的資源占用狀況&#xff0c;類似于Windows的任務管理器。下面詳細介紹它的使用方法。 top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48Tasks: 29 total, 1 running, 28 sleeping, …

Flume安裝部署

1.安裝部署 1、解壓tar -zxvf apache-flume-1.9.0-bin.tar.gz 2、改名mv apache-flume-1.9.0-bin flume-1.9.0 3、配置環境變量 vi /etc/profile,source /etc/profile #flume export FLUME_HOME/usr/local/apps/flume-1.9.0 export PATH$PATH:$FLUME_HOME/bin4、將conf下的…

ubuntu學習摘要-ubuntu root用戶

在我安裝好后root的密碼是什么&#xff1f;我怎樣使用root帳號&#xff1f; 當你第一次安裝好Ubuntu后&#xff0c;root帳號不能用。在安裝期間創建的第一個用戶對系統有管理權&#xff0c;通過“sudo”能象root運行程序.使用時僅需它的普通用戶密碼。例如: sudo apt-get updat…

Elasticsearch 簡介入門

Elasticsearch 是一個分布式的開源搜索和分析引擎&#xff0c;適用于所有類型的數據&#xff0c;包括文本、數字、地理空間、結構化和非結構化數據。Elasticsearch 在 Apache Lucene 的基礎上開發而成&#xff0c;由 Elasticsearch N.V.&#xff08;即現在的 Elastic&#xff0…

Elasticsearch 7.x 安裝及配置

一、下載安裝 1、下載地址&#xff1a;https://www.elastic.co/cn/downloads/elasticsearch 2、解壓安裝&#xff1a;tar -zxcf elasticsearch-7.9.0-linux-x86_64.tar.gz 二、新建es用戶 在某個版本以后&#xff0c;elasticsearch為了安全性&#xff0c;是不能用root用戶啟…

Ubuntu下面apache2安裝

Ubuntu為我們提供了 su apt-get install 命令&#xff0c;通過它你可以很方便地安裝一些軟件&#xff0c;這些軟件是放在Ubuntu放置在各個地方的服務器上面&#xff0c;如果你想安裝的軟件是比較常見的&#xff0c;一般都可以通過它來下載.當然 Apache 這個軟件服務器上面是有…

Java并發篇_樂觀鎖與悲觀鎖

樂觀鎖對應于生活中樂觀的人總是想著事情往好的方向發展&#xff0c;悲觀鎖對應于生活中悲觀的人總是想著事情往壞的方向發展。 一、引入概念 1、悲觀鎖 總是假設最壞的情況&#xff0c;每次去拿數據的時候都認為別人會修改&#xff0c;所以每次在拿數據的時候都會上鎖&#…

Redhat與ubuntu配置網卡

redhat linux中設置網卡固定ip之前在xwindow下的redhat-config-network 設置網卡固定ip發現不起作用&#xff0c;設置好后就是ping不通。就查了些資料&#xff0c;更改 /etc/sysconfig/network-scripts/ifcfg-eth0(第一個網卡為eth0)&#xff0c;配置dns的文件為 /etc/resolv.c…

SSH軟件包:Sftp,scp和ssh-agent

這篇文章的中心是介紹在ssh軟件包中非常有用的程序如&#xff1a;sftp&#xff0c;scp&#xff0c;ssh-agent&#xff0c;和ssh-add。在下文中我們假設sshd2守護進程很好地被設置并且運行良好。Sftp和scp總覽讓我們把注意力集中到sftp和scp上。第一個&#xff08;sftp安全文件傳…

JAVA并發篇_公平鎖與非公平鎖

簡單的來說&#xff0c;如果一個線程組里&#xff0c;能保證每個線程都能拿到鎖&#xff0c;那么這個鎖就是公平鎖。相反&#xff0c;如果保證不了每個線程都能拿到鎖&#xff0c;也就是存在有線程餓死&#xff0c;那么這個鎖就是非公平鎖。 一、引入概念 1、公平鎖&#xff1…

Java并發篇_進程線程

一個進程包括由操作系統分配的內存空間&#xff0c;包含一個或多個線程。一個線程不能獨立的存在&#xff0c;它必須是進程的一部分。一個進程一直運行&#xff0c;直到所有的非守護線程都結束運行后才能結束。 多線程能滿足程序員編寫高效率的程序來達到充分利用 CPU 的目的。…