首頁 >資料庫 >mysql教程 >如何在MySQL中模擬減號運算?

如何在MySQL中模擬減號運算?

Barbara Streisand
Barbara Streisand原創
2024-12-30 18:55:13982瀏覽

How to Simulate the MINUS Operation in MySQL?

MySQL 等價的 MINUS 操作

MySQL 本身不支援 MINUS 操作,該操作在 Oracle 資料庫中常用。但是,它提供了另一種使用 NOT IN 條件排除記錄的方法。

問題陳述

您有三個表:

  • Service_Details:儲存服務詳細資訊
  • Servicing_States:列出服務所在的狀態提供
  • 例外:表示不提供服務的區域

您想要組合兩個SELECT 查詢的結果來取得在某些州提供但在其他州不提供的服務清單其他人,有效地執行減操作。

解決方案

實作為此,您可以使用以下查詢:

SELECT Service_Code
FROM Service_Details
WHERE Service_Code IN (
  SELECT Service_Code
  FROM Servicing_States
  WHERE State NOT IN (
    SELECT State
    FROM Exception
    WHERE Zipcode = <ZIP CODE>
  )
);

說明

此查詢執行下列步驟:

  1. 選擇Service_Code來自 Service_Details。
  2. 過濾結果以僅包含存在於 Service_Details 中的 Service_Code 值Servicing_States 表。
  3. 刪除具有指定郵遞區號的 Exception 表中存在的任何 Service_Code 值。

結果清單代表在某些州提供但不在指定的郵遞區號,有效模擬減號操作。

以上是如何在MySQL中模擬減號運算?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn