QUERY 函式大解析(九):與儲存格連動

更新 發佈閱讀 9 分鐘

如果你 WHERE 的條件需要常常更動,但每次都要進去 QUERY 所在的儲存格編輯語法,實在是有點太麻煩了?但如果你可以...

raw-image

欸,這個好像很方便啊!!!(✪ω✪) 可以看到下面的 QUERY 結果隨著下拉式選單的內容改變了。感覺好像是個很高級的用法,但其實只要用「&」和儲存格串連,就可以讓 QUERY 跟儲存格互動。

我在方格子上寫了一系列使用 QUERY 的教學文章,也歡迎你來看看:

QUERY 函式大解析,系列文索引

今天的內容會比較複雜一點點,如果有任何不確定的地方,歡迎在留言區提問!學會後相信你對 QUERY 的認識就會再更近一步了,實用性也會大增大增。我們馬上來看看吧!٩(。・ω・。)و


基本原理:&

不知道大家有沒有聽過「&」這個東西?「&」符號可以用來連接文字與文字。像是這樣:

="A" & "B"       --> AB
="1" & "2" --> 12
="A123" & "B456" ---> A123B456

執行結果像是這樣:

raw-image

我們當然也可以用 & 來連結儲存格的資訊,例如 A1 & B1、A2 & B2、A100 & Z100。來看看這張圖:

raw-image

如果我們想要在 C1 結合 A1 的「小明:」和 B1 的「165 公分」、那就可以在 C1 打上:

= A1 & B1
raw-image

就會出現:

raw-image

既然我們可以用 & 來連結儲存格,那 QUERY 也其實可以! QUERY 的語法其實是一連串由雙引號「"」開始、打入語法、再由雙引號「"」結束的文字

那麼,我們先回到上面的例子:

raw-image

執行出這段 QUERY 的語法其實是:

"SELECT... 
WHERE 欄位字母 ... " & 下拉式選單所在的儲存格 & "
剩下的 QUERY 語句"

看起來好像有點複雜,但可以這樣想像:

    "SELECT... WHERE 欄位字母 ... "連接(&) 下拉式選單所在的儲存格
連接(&) "剩下的 QUERY 語句"

至於這串句子裡面的兩對雙引號,你可以看成兩層:

raw-image

那麼 & 的連接其實就是:淡黃色的部分 + 儲存格 + 剩下的 QUERY 語句了。那來舉幾個語法的例子:

"SELECT A, B
WHERE A & " B1 & "
ORDER BY A DESC"
--
"SELECT *
WHERE A & " B1 & "
"
--
"SELECT A, SUM(B)
WHERE A & " B1 & "
GROUP BY A
"

這樣一來 QUERY 就會隨著 WHERE 之後儲存格的內容、去做搜尋囉!如果想要更方便使用,可以把那個儲存格變成資料驗證(下拉式選單),就像上面的動圖一樣可以快速切換資料了。當然不做下拉式選單也可以,直接在那個儲存格上面編輯也當然 OK。


資料格式

不過我們有時得因為儲存格的資料類型不同,得稍稍改變一下語法、也有些該注意的事情,接下來我們詳細講解一下。為了方便稱呼,我們接下來會把要互動的儲存格簡稱「互動格」 唷!

數字

如果你的互動格裡面是數字,其實語法比較單純,直接用兩個 & 串起來就好了:

=QUERY(資料, "SELECT ...
WHERE A = " & 互動格 & "
..."
)


布林值(TRUE / FALSE)

布林值就是 TRUE 和 FALSE。另外一種會出現 TRUE 和 FALSE 的狀況就是有核取方塊的時候,預設值是 FALSE、打勾就是 TRUE。處理的語法和數字一樣,不需要特別處理:

=QUERY(資料, "SELECT ...
WHERE A = " & 互動格 & "
..."
)


擷取時間、日期

那如果今天互動格裡面是時間或日期,想要擷取裡面的資料(例如擷取「2022 年 5 月 25 日」裡面的年份、月份、日期,又或是擷取「16:30:19」裡面的小時數、分數、秒數),我們就要運用到之前學過的日期控制術!假如互動格裡面是我們想要查找的小時數:

=QUERY(資料, "SELECT ...
WHERE hour(A) = " & 互動格 & "
...")

當然,如果是秒數,那就是:

=QUERY(資料, "SELECT ...
WHERE second(A) = " & 互動格 & "
...")

以此類推!


文字

再來文字的話會比較麻煩一點點,必須要在內部連結的雙引號前後多加一個單引號「'」,這是要告訴 QUERY 互動格是文字的資訊。可以回想一下,沒有互動格的狀況下,我們要用 WHERE 找含有文字條件時,也本來就需要用到單引號:

... WHERE A = '台灣' ...
... WHERE B contains '中文' ...
... WHERE C starts with '綠島' ...

這就是為什麼使用互動格時候得加上單引號的原因囉!語法就像這樣:

=QUERY(資料, "SELECT ...  
WHERE A = '" & 互動格 & "' ...")

你會注意到雙引號的前後各有一個單引號包著,他們是成雙成對的,別讓他們落單!


指定日期

最後再進階一點點的就是,如果你的互動格有日期,而你的 WHERE 條件想要和它互動。不過日期在 Google 試算表算是個比較特別的資料,所以就...要用特別的方式處理:

=QUERY(資料, "SELECT ...
WHERE A = date '"
& TEXT(互動格, "yyyy-mm-dd")
& "' ...")

看看上面的語法,解釋一下原理吧!

  • date 語法:可以讓 QUERY 把 date 之後的文字轉換成日期格式。
  • 單引號「'」:將互動格的資訊視為文字。
  • TEXT(互動格, "yyyy-mm-dd"):將把互動格轉成「yyyy-mm-dd」的格式,QUERY 才能進一步解析。這邊的 yyyy-mm-dd 是固定的,不能以別種形式呈現、不然 QUERY 沒辦法辨識。

如果覺得這個語法不是很好寫,直接複製貼上這段也沒問題的!



換你做做看!

這次要用到的資料在下方的「資料表」,可以點開來瞧瞧:

raw-image

再來請點選資料表「練習」,有準備給大家的練習題 ⬇️

raw-image

這邊我準備了各式各樣的練習,讓大家可以試試看 QUERY 和儲存格的運用!會橫跨所有上面提到的資料格式。如果練習的時候卡住了,歡迎到「練習解答」的試算表對個答案,實際做做看應該會比只看這篇文章更有幫助。

如果你已經通關、還想要再延伸應用的話,想到幾個方向給大家參考:

  1. 搭配 IFS、核取方塊等等不同條件式,做出一個可以包含複數條件的搜尋引擎
  2. 一個下拉式選單延伸到多項 QUERY,更新一次互動格就可以更新全部的 QUERY
  3. 更多用法等你來發掘 👀!



如果你喜歡這次的文章,歡迎你透過這些方法支持我:
・按下愛心、按下儲存
・留言告訴我你的想法
・加入喜特先生的官方沙龍,即時看到我發布的教學
・付費訂閱喜特先生的官方沙龍,加入每月小額訂閱方案
・追蹤喜特先生的 Facebook
・按這邊小額贊助我的創作!

想要看更多文章,歡迎來到我的 Notion 頁面找找有沒有你需要的資源唷!

我是喜特先生,Mr. Sheet,我們下個教學見!



留言
avatar-img
留言分享你的想法!
avatar-img
喜特先生官方沙龍
21.2K會員
153內容數
簡潔,快速,有效, 讓你的日常生活、工作生產力大提升! ___ 快按「加入」,馬上追蹤所有喜特先生的更新,有 Google 試算表教學、Google Apps Script 的研究、數據分析課程的開箱,還有 Google 試算表疑難雜症的解題分享唷!💪
2025/04/20
請你試著在 Google 試算表的儲存格上打這個,按下 Enter: =WHATTHEFOXSAY() 會有神奇的事情發生喔 ✨
Thumbnail
2025/04/20
請你試著在 Google 試算表的儲存格上打這個,按下 Enter: =WHATTHEFOXSAY() 會有神奇的事情發生喔 ✨
Thumbnail
2024/06/02
上次介紹了 REPLACE 函式,可以用來取代儲存格內的特定文字。其實我們還有一個相似的函式叫 SUBSTITUTE,也有取代的功能,不過當然有一點不一樣的地方!今天會分享語法的範例,還有跟 REPLACE 的差異在哪。一起來看看!
Thumbnail
2024/06/02
上次介紹了 REPLACE 函式,可以用來取代儲存格內的特定文字。其實我們還有一個相似的函式叫 SUBSTITUTE,也有取代的功能,不過當然有一點不一樣的地方!今天會分享語法的範例,還有跟 REPLACE 的差異在哪。一起來看看!
Thumbnail
2024/05/25
這是文字處理基礎函式的第四篇文章,今天要來介紹 REPLACE 函式! REPLACE 可以取代掉儲存格內的文字,今天會分享一下它語法怎麼寫、也有兩個實際應用的案例。一起來看看! REPLACE 語法 REPLACE 的語法長了一點點,有四個參數要設定: =REPLACE(要取代
Thumbnail
2024/05/25
這是文字處理基礎函式的第四篇文章,今天要來介紹 REPLACE 函式! REPLACE 可以取代掉儲存格內的文字,今天會分享一下它語法怎麼寫、也有兩個實際應用的案例。一起來看看! REPLACE 語法 REPLACE 的語法長了一點點,有四個參數要設定: =REPLACE(要取代
Thumbnail
看更多
你可能也想看
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
※ 為什麼需要 Subquery? 當⼀個任務需要多個 Query 完成任務,可以使⽤ Subquery 把多個 Query 合併成⼀個 Query。 當我們在進行SQL查詢時,每次查詢都需要在Web Server和資料庫之間來回傳遞資料。這個過程會產生網路延遲,特別是當兩者之間的物理距離較遠時
Thumbnail
※ 為什麼需要 Subquery? 當⼀個任務需要多個 Query 完成任務,可以使⽤ Subquery 把多個 Query 合併成⼀個 Query。 當我們在進行SQL查詢時,每次查詢都需要在Web Server和資料庫之間來回傳遞資料。這個過程會產生網路延遲,特別是當兩者之間的物理距離較遠時
Thumbnail
在工作情境中手動執行SQL語法更新中文字時,有時會遇到中文字顯示問號(?)的情況。這篇文章將介紹如何解決手動執行SQL語法時造成中文顯示問號(?)的方法。
Thumbnail
在工作情境中手動執行SQL語法更新中文字時,有時會遇到中文字顯示問號(?)的情況。這篇文章將介紹如何解決手動執行SQL語法時造成中文顯示問號(?)的方法。
Thumbnail
※ 基本操作:SQL 語法,SELECT, WHERE, CREATE, UPDATE, DELETE。 SELECT:從資料庫中或資料表中指定要選擇的欄位中取得資料,稱之為查詢 (query)。 ※ 語法:要由兩部分構成,第一部分是要 "拿什麼" 資料 (若有多項用逗號隔開);第二部分則為
Thumbnail
※ 基本操作:SQL 語法,SELECT, WHERE, CREATE, UPDATE, DELETE。 SELECT:從資料庫中或資料表中指定要選擇的欄位中取得資料,稱之為查詢 (query)。 ※ 語法:要由兩部分構成,第一部分是要 "拿什麼" 資料 (若有多項用逗號隔開);第二部分則為
Thumbnail
之前在條件式格式(一)提到了怎麼用條件式格式的功能,把想看到的資料、以更醒目的方法顯示,更方便我們判讀數據,來看看怎麼做更複雜的自訂公式!
Thumbnail
之前在條件式格式(一)提到了怎麼用條件式格式的功能,把想看到的資料、以更醒目的方法顯示,更方便我們判讀數據,來看看怎麼做更複雜的自訂公式!
Thumbnail
終於要來完成資料驗證系列文的最後一塊拼圖,核取方塊了! 核取方塊能做的應用有很多,在這邊我會分享兩個,歡迎大家來看看~
Thumbnail
終於要來完成資料驗證系列文的最後一塊拼圖,核取方塊了! 核取方塊能做的應用有很多,在這邊我會分享兩個,歡迎大家來看看~
Thumbnail
除了常見的下拉式選單,我們還有其他的驗證機制可以使用。今天就來看看怎麼設定數值、文字、日期的資料驗證吧!
Thumbnail
除了常見的下拉式選單,我們還有其他的驗證機制可以使用。今天就來看看怎麼設定數值、文字、日期的資料驗證吧!
Thumbnail
如果你 WHERE 的條件需要常常更動,但每次都要進去 QUERY 所在的儲存格編輯語法,實在是有點太麻煩了?但其實有個小技巧,可以讓 QUERY 更新得更輕鬆。來看看吧!
Thumbnail
如果你 WHERE 的條件需要常常更動,但每次都要進去 QUERY 所在的儲存格編輯語法,實在是有點太麻煩了?但其實有個小技巧,可以讓 QUERY 更新得更輕鬆。來看看吧!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News