Truy vấn Google Trang tính phù hợp
Chức năng Truy vấn của Google Trang tính thay thế rất nhiều chức năng bảng tính khác, điều này thậm chí còn không vui chút nào – LỌC, TRUNG BÌNH và TỔNG tất cả đều biến mất khỏi cửa sổ khi nó đi vào hình ảnh Show
Tuy nhiên, có một vài sắc thái đối với các truy vấn, vì vậy hãy thực hiện từng bước. Bài đăng này chứa tám video, với các ghi chú của vách đá được nhúng bên dưới mỗi video Hãy đi sâu vào Nhân tiện…nếu bạn đang muốn chuyển từ Trang tính sang BigQuery, hãy xem Công thức khởi động nhanh BigQuery của chúng tôi tại truy vấn. công thức nấu ăn 1. Khái niệm cơ bản về Truy vấn Google Trang tínhQUERY kết hợp tất cả khả năng của các hàm số học (SUM, COUNT, AVERAGE) với khả năng lọc của một hàm như FILTER Trong ví dụ này, chúng ta sẽ xem qua một số ví dụ về QUERY để phân tích mẫu dữ liệu Twitter Cấu trúc cơ bản của một QUERY là nhập
Chúng tôi kết hợp chúng như vậy =query( ‘tab dữ liệu’. A. C, “chọn A trong đó C = ‘twitter’”) Ví dụ hàm QUERY trả lời câu hỏiQ. Số lượng tin nhắn lại trung bình từ mẫu là bao nhiêu? A. =truy vấn(D1. G, “chọn trung bình(G)”) Q. Số lượng tin nhắn lại trung bình trên Twitter có chứa @mention nhưng không phải là tin nhắn lại là bao nhiêu? A. =truy vấn(D1. G, “chọn avg(G) trong đó E chứa ‘@’ chứ không phải E chứa ‘RT’”) Q. Mỗi người dùng trong danh sách đã nhận được bao nhiêu tin nhắn lại? A. =truy vấn(D1. G, “chọn F, tổng (G) trong đó E. = ‘’ nhóm theo tổng nhãn F(G) ‘tổng số lượt retweet’”) Tại sao các truy vấn trong Trang tính lại phức tạp đến vậy – chẳng phải điều này sẽ dễ dàng hơn sao? Khi tôi lần đầu tiên bắt đầu viết so sánh ngày trong các truy vấn của Google (lấy dữ liệu trước/sau một ngày nhất định), thật khó để tìm ra cú pháp chính xác Thật không may, nó không thực sự được đề cập ở bất cứ đâu trong tài liệu Google Trang tính, vì vậy tôi phải tự mình tìm hiểu Bạn phải làm đúng hai việc
Nếu bạn muốn so sánh động một ngày từ một ô khác, thì đó là một câu chuyện khác. Tôi muốn giữ các phạm vi ngày (7 ngày qua, 30 ngày qua, từ đầu năm đến nay, v.v.), sau đó tham chiếu chúng trong một truy vấn như thế này Chú ý cú pháp
Một khi bạn hiểu rõ về nó, bạn sẽ không bao giờ nghĩ về nó nữa. Tuy nhiên, nếu bạn quên cú pháp, thì CIFL cheat sheet sẽ hỗ trợ bạn 3. Gỡ lỗi các lỗi Truy vấn phổ biếnVề gỡ lỗi các lỗi Truy vấn phổ biến Lỗi không bao giờ thú vị, nhưng thông báo lỗi của Trang tính sẽ luôn chỉ cho bạn đi đúng hướng #REF1) Kết quả mảng không được mở rộng vì nó sẽ ghi đè lên dữ liệu trong D6Có dữ liệu trong ô D6 chặn mở rộng truy vấn của bạn – hãy xóa nó 2) Tên trang tính chưa được giải quyết…Trang tính mà bạn đang tham chiếu trong truy vấn của mình không tồn tại – có thể do lỗi đánh máy hoặc đã xóa nó. ( #GIÁ TRỊ3) PARSE_ERRORGây ra bởi một chuỗi truy vấn sai thông tin – nó sẽ luôn cho bạn biết chính xác nơi cần tìm Có nghĩa là có một lỗi cú pháp ở đâu đó xung quanh mệnh đề 'where' của tôi - một dấu phẩy treo hoặc một lỗi đánh máy =truy vấn(tweet. A1. D,‘select C, sum(D), where D >= 0 group by C limit 2’,0) 4) LABEL_COL_NOT_IN_SELECTNguyên nhân là do sự không khớp giữa các cột trong mệnh đề 'chọn' và mệnh đề 'nhãn' của bạn =truy vấn(tweet. A1. D,‘select C, sum(D) where D >= 0 group by C limit 2 label sum© “,0) Ở đây sum(D) bị dán nhãn sai thành sum© 5) KHÔNG_CỘTKhi bạn đang chọn một cột nằm ngoài phạm vi của mình =truy vấn(tweet. A1. C,‘select C, sum(D) where D >= 0 group by C limit 2’,0) Đã khắc phục bằng cách mở rộng phạm vi dữ liệu của bạn để bao gồm cột (tweet. A1. D trong trường hợp này) 6) THÊM_COL_TO_GROUP_BY_OR_AGGBật lên khi bạn đang chọn một cột (B trong trường hợp này) không có trong mệnh đề 'nhóm theo' của bạn =truy vấn(tweet. A1. D,‘select C, B, sum(D) where D >= 0 group by C limit 2’,0) Nếu bạn không tính tổng hoặc tổng hợp cột B, thì bạn phải nhóm theo cột đó #N/A7) Truy vấn hoàn thành với đầu ra trốngĐơn giản có nghĩa là không có kết quả nào từ truy vấn của bạn như hiện được viết – có khả năng là do điều kiện quá hạn chế =truy vấn(tweet. A2. D,‘chọn C, D trong đó D = 100 giới hạn 2’,0) Hãy thử đơn giản hóa truy vấn của bạn để ít hạn chế hơn (xóa D = 100 trong trường hợp này) Khi truy vấn nhiều Google Sheets, với importrange + {} Trong mỗi cuộc đời, sẽ có lúc bạn muốn kết hợp hai phạm vi dữ liệu trong một truy vấn Google Trang tính Hãy nói về cách kết hợp các phạm vi dữ liệu từ trong cùng một bảng tính (hoặc từ hai trang tính khác nhau), để chạy một truy vấn – làm việc thông qua các ví dụ sử dụng dữ liệu Twitter mẫu Để truy vấn một phạm vi kết hợp từ trong cùng một trang tính
Để truy vấn một phạm vi kết hợp từ các trang tính khác nhau
Thành thật mà nói, mục tiêu của tôi là không bao giờ phải kết hợp các phạm vi từ bên trong truy vấn (tôi thích thực hiện kiểu tổng hợp đó trước khi viết truy vấn), nhưng đôi khi điều đó là không thể tránh khỏi 5. Truy vấn theo tên cột không phải chữ cáiĐiều này sẽ giúp bạn đỡ đau đầu hơn nếu nhiều đồng nghiệp làm việc trong Trang tính của bạn Truy vấn là đối tượng nhạy cảm – chúng yêu cầu chúng tôi chỉ định chính xác các chữ cái cột ( A, tổng(B) ) hoặc số ( Col1, tổng(Col2) ) mà chúng tôi muốn trả về Nhưng với cách chúng ta sử dụng Trang tính, các cột đó có thể luôn thay đổi. Mọi người thêm hàng mới, xóa hàng và thường thay đổi mọi thứ xung quanh Bằng cách lồng hai truy vấn vào với nhau, chúng tôi có thể chứng minh các truy vấn của bạn luôn khớp với cùng tiêu đề cột trong tương lai
Đặt tất cả lại với nhau, và nó trông như thế này Dòng đầu tiên (bên trong truy vấn) tìm tên cột của bạn – truy vấn thực tế mà nó đang chạy chỉ là 'chọn Col3, Col4. ’ Dòng thứ hai (truy vấn bên ngoài) chạy toán học thực tế của bạn và gắn nhãn các cột của bạn. Hãy nhớ rằng các nhãn cột truy vấn sẽ luôn xuất hiện ở cuối câu lệnh và nhìn chung trông giống như câu lệnh CHỌN (chọn Col1, tổng(Col2) ánh xạ ra nhãn Col1 'xử lý', tổng (Col2) 'tổng số tin nhắn lại') Bạn có thể mất một chút thời gian thử để làm quen với điều này – vui lòng sao chép Bảng tính minh họa được sử dụng trong video để sử dụng lại công thức của chúng tôi 6. Xây dựng Pivot Table với truy vấnTuyệt vời để xây dựng báo cáo chuỗi thời gian trong Trang tính Nếu bạn đang làm việc với dữ liệu chuỗi thời gian trong Trang tính (giống như hầu hết chúng ta làm), thì xoay vòng trong các truy vấn sẽ là động thái yêu thích mới của bạn Nó cho phép bạn tạo báo cáo đầy đủ trong một Truy vấn, bằng cách nhóm các giá trị ở cột bên trái và chuyển đổi phạm vi ngày (hoặc bất kỳ cột thứ hai nào) sang bên phải Bạn xoay vòng với một cú pháp rất giống với nhóm – truy vấn này tạo ra kết quả ở trên =truy vấn(tweet. A1. D,‘select C, sum(D) where D >= 0 group by C pivot A’,0) Như bạn có thể thấy, nó đơn giản như việc thêm 'trục A' sau mệnh đề 'nhóm theo' trong một truy vấn Bạn có thể sử dụng danh sách thả xuống để thêm các biến đầu vào trong truy vấn của mình Khi bạn đang tạo báo cáo trong Google Trang tính, mục tiêu chắc chắn là không khiến những người *đang sử dụng* báo cáo nghĩ Menu thả xuống rất phù hợp cho việc này vì chúng cho phép bạn trình bày một số tùy chọn hạn chế để báo cáo người dùng Xác thực dữ liệu trong Trang tính tự động tạo menu thả xuống khi bạn tạo chúng – khá hấp dẫn phải không? Và trộn giá trị đã chọn từ menu thả xuống của bạn với Truy vấn rất đơn giản = truy vấn (dữ liệu. A. B, 'chọn A trong đó B = "&' vị trí tab thả xuống'. C2 & “‘, 0) Chỉ cần một vài lần nhấn phím
Đó là nó. Người dùng báo cáo của bạn sẽ cảm ơn bạn 8. Sự khác biệt giữa SQL và Truy vấnSự khác biệt giữa Truy vấn Trang tính và SQL là gì? Nếu bạn đã quen với việc viết các truy vấn SQL, thì ban đầu có thể gặp khó khăn khi làm việc với các truy vấn Google Trang tính (và ngược lại) Nếu bạn chưa biết bất kỳ câu SQL nào, hãy tìm hiểu Truy vấn trước. Nó sẽ giúp làm việc với cơ sở dữ liệu *dễ dàng hơn nhiều* khi bạn đến đó Hãy xem qua một số cách mà chúng giống và khác nhau, và cách bạn có thể áp dụng từng cách trong công việc của mình truy vấn cơ bảnSQL. CHỌN * TỪ bảng WHERE column_name = ‘xyz’ ĐẶT HÀNG BẰNG tên_cột desc GIỚI HẠN 10 trang tính. = truy vấn( ‘tab’. A. D, ‘CHỌN * WHERE A = ‘xyz’ ĐẶT HÀNG THEO A desc GIỚI HẠN 10’) Cú pháp truy vấn cơ bản gần giống nhau. Truy vấn Google Trang tính sử dụng cùng một câu lệnh SELECT để chọn cột, WHERE / AND / OR để đặt logic, ORDER BY để sắp xếp kết quả và LIMIT để chỉ lấy một số kết quả nhất định (xem danh sách đầy đủ các mệnh đề ngôn ngữ trong Google ) Điểm khác biệt chính là không có câu lệnh 'TỪ' trong truy vấn Trang tính – thay vì tham chiếu một bảng, bạn tham chiếu một dải ô ('tab'. A. D trong ví dụ này) Ngoài ra, bạn sẽ nhận thấy rằng, thay vì tham chiếu tên cột (như trong SQL), trong truy vấn Trang tính, bạn tham chiếu cột theo chữ cái (A, B, C, v.v.) hoặc theo thứ tự của chúng (Col1, Col2, Col3) Làm toán trên cộtSQL. CHỌN tên_cột, tổng (tên_cột_khác) TỪ bảng NHÓM THEO tên_cột trang tính. = truy vấn( ‘tab’. A. D, 'CHỌN A, tổng (B) NHÓM THEO A') Các hàm tổng hợp avg(), count(), sum(), max(), min() mà bạn thường sử dụng trong SQL có sẵn trong các truy vấn Trang tính, cũng như các hàm cơ bản +, -, *, / số học Cột ghi nhãnSQL. CHỌN cột_name NHƯ 'nhãn' TỪ bảng trang tính. = truy vấn( ‘tab’. A. D, 'CHỌN A, B NHÃN A 'nhãn1', B 'nhãn2' ‘) Trong SQL, để gắn nhãn cho một cột, bạn chỉ cần thêm 'AS' vào câu lệnh 'SELECT' của mình. column_name AS “nhãn. ” Trong Trang tính, điều này được thực hiện ở cuối truy vấn, với câu lệnh 'nhãn' Việc gắn nhãn cột sum(A) là trống sẽ loại bỏ tiêu đề sum() tự động khỏi hiển thị, trả về một số liệu đơn rõ ràng và đẹp mắt SQL. CHỌN column_name TỪ bảng WHERE date_column > ‘8/22/2016’ trang tính. = truy vấn( ‘tab’. A. D, ‘CHỌN MỘT NƠI C > ngày ‘22-08-2016’ ‘) Ngày tháng trong các truy vấn của Google rất khó để tìm ra lần đầu tiên, nếu bạn đã quen làm việc với SQL Không giống như SQL, có thể xử lý nhiều định dạng ngày ('20160826', '8/26/2016', '2016-08-26'), Trang tính chỉ có thể lấy ngày ở định dạng 'yyyy-mm-dd' – vì vậy đôi khi bạn có Trong Trang tính, bạn cũng phải xác định rằng bạn đang so sánh một ngày bằng cách thêm cụm từ 'ngày' trước chuỗi ngày của bạn Kết hợp cụm từ mờSQL. CHỌN column_name TỪ bảng WHERE column_name THÍCH ‘%phrase%’ trang tính. = truy vấn( ‘tab’. A. D, ‘CHỌN MỘT NƠI CHỨA ‘giá trị’ ‘) Để kéo văn bản có chứa một giá trị, bạn chỉ cần sử dụng 'chứa', thay vì câu lệnh 'thích' trong SQL. Các truy vấn trang tính có câu lệnh 'thích', nhưng tôi thấy mình sử dụng 'chứa' thường xuyên hơn vì tính đơn giản của nó Tuy nhiên, một nếp nhăn đã được thêm vào, nếu bạn đang muốn thêm tham số 'không chứa', bạn phải đặt 'không' trước ký tự cột Tham gia bànSQL. Chọn một. tên_cột, b. column_name TỪ table1 a, table2 b WHERE a. tên_cột = b. tên cột dọc trang tính. Không được hỗ trợ ???? Mối quan tâm lớn nhất của tôi với các truy vấn Trang tính là chúng không hỗ trợ nối hai bảng với nhau bằng một khóa duy nhất. Tôi đã thử mọi cách giải quyết mà tôi có thể nghĩ ra nhưng cho đến nay vẫn chưa tìm ra cách Nhóm Google Trang tính, nếu bạn đang đọc phần này – hãy trợ giúp Khớp từ một danh sách các tùy chọnSQL. CHỌN column_name TỪ bảng WHERE column_name IN (‘match 1’, ‘match 2’, ‘match 3’) trang tính. = truy vấn( ‘tab’. A. D, ‘CHỌN A Ở ĐÂU A = ‘match1’ HOẶC A = ‘match2’ HOẶC A = ‘match3’ ‘) Thật không may, trong Google Trang tính, không có cụm từ 'IN' trong SQL, vì vậy bạn phải liệt kê ra các giá trị mà bạn đang tìm kiếm để khớp từng cái một 9. Các truy vấn lồng nhau như SQLVới một chút cách tiếp cận khó hiểu, bạn có thể tính gần đúng chức năng lồng nhau của SQL trong Trang tính Như tôi đã đề cập ở trên, việc không thể tham gia truy vấn trong Sheets là một nhược điểm lớn Giả sử bạn có dữ liệu trong hai tab khác nhau và bạn muốn lấy tất cả các giá trị từ một bảng tồn tại trong bảng kia tôi đã nghĩ là không thể. tôi đã sai Đó là một cách khó khăn để bắt chước cách mà các truy vấn SQL có thể lồng vào nhau, nhưng nó hoạt động Bạn kết hợp công thức mảng và nối để tạo ra một chuỗi dài trong truy vấn của bạn ( OR A = ‘value1’ OR A = ‘value2’, v.v.) Công thức cuối cùng trông như thế này = truy vấn (tab1. A. Z, ‘chọn A, tổng (B) trong đó A. = ' và (B = 'blah' ' & nối (công thức mảng (' OR B = “ & tab2. C2. C & “‘)) & ‘) nhóm theo B’,0) Điều này lấy tất cả các giá trị có trong Tab 2, cột C và tìm kiếm chúng trong cột B của Tab 1 Đó là truy vấn lồng nhau của một người nghèo, nhưng nó hoạt động. ) Cần giúp đỡ?Đó là rất nhiều truy vấn về Google Trang tính, nhưng tôi hy vọng nó sẽ bắt đầu thu hút bạn Đảm bảo lấy một bản sao miễn phí của bảng gian lận công thức Trang tính tại đây – nhưng nếu bạn đã làm được đến mức này, thì có lẽ bạn đã sẵn sàng để thành thạo Trang tính bằng cách đầu tư một vài giờ vào khóa học Truy vấn CIFL nâng cao (bao gồm hướng dẫn chi tiết và Hoặc liên hệ trực tiếp với chúng tôi – đội ngũ chuyên gia tư vấn của chúng tôi luôn sẵn sàng giúp bạn giải quyết các vấn đề HỎI phức tạp nhất của bạn Có chức năng khớp trong Google Trang tính không?MATCH là một hàm trong Google Trang tính cho phép bạn tra cứu một giá trị trong bảng dữ liệu và trả về vị trí hàng và cột của giá trị đó. Điều này có thể hữu ích để tìm dữ liệu trong một bảng lớn hoặc để tạo các công thức động tham chiếu đến dữ liệu cụ thể trong một bảng.
Tôi có thể sử dụng Vlookup trong truy vấn trong Google Trang tính không?Hàm VLOOKUP của Google Trang tính luôn tìm kiếm trong cột đầu tiên của dải ô . Chỉ mục - số cột trong phạm vi mà từ đó một giá trị phù hợp (giá trị trong cùng một hàng với khóa_tìm kiếm) sẽ được trả về. Cột đầu tiên trong phạm vi có chỉ số 1. Nếu chỉ mục nhỏ hơn 1, công thức Vlookup trả về #VALUE.
Chúng tôi có thể sử dụng truy vấn SQL trong Google Trang tính không?Hàm SQL của Google Trang tính là một chức năng rất quan trọng đối với người dùng Google Trang tính. Nó hỗ trợ sử dụng các lệnh kiểu cơ sở dữ liệu để thao tác dữ liệu Google Trang tính. Nó là một chức năng rất mạnh mẽ và linh hoạt. Nếu đã sử dụng SQL, bạn sẽ thấy chức năng Truy vấn của Google Trang tính rất dễ sử dụng . |