How to select rows in google sheets by condition - google-sheets-query

I've been researching this for a couple of hours now and have had no luck.
I am trying to search for emails in my spreadsheet that contain "#google.com" and have them all selected so that I can copy them instead of going through them 1 by 1. There are around 90K so this would be a considerable undertaking.
This is the formula that I am currently using:
=QUERY(Data!A:A,"select A where(A =#google.com)")
All of the data is in column A.
Hope I've just made a dumb error somewhere.
Thanks in advance :)

Perhaps what you might try is:
=QUERY(Data!A:A,"where A contains '#google.com'")

Related

Datastudio :: showing people that doesnt fill the google form (daily check in issues)

I'm pretty new to dataStudio and I'm trying to build a simple dashboard to track daily check in for students. The thing is, i want to show table report on datastudio based on students that doesnt fill the form on that day.
and i already figure out a few possible solution,
i've created another sheets on responses files, to show if the student fill the form or not in several range of date
like this, and a will filtered this into a new table that will be shown on data studio using date range filter. but i have difficulties because the date range filter only filter on row, not on column (dimensions)
i have quite a lot of students, so after several month the table will bulk up and do some massive processing lag upon opening. Maybe there are alternative way to do this more properly instead?
i dont know if i can solve this case using script, im trying to using js to solve this. still strugling, maybe you can give an advice, thank you
You are right, Data Studio is filtering on rows not on columns.
The best way would be to unpivot your table in Big Query.
Connecting google sheets to Big Query: https://support.google.com/docs/answer/9702507?hl=en
Unpivot in Big Query:
https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax#unpivot_operator
and see the example:
SELECT * FROM Produce
UNPIVOT(sales FOR quarter IN (Q1, Q2, Q3, Q4))
with Q1 to Q4 would be your dates in the first row.

Scan COLUMN for key set of initials, get value of that ROW, then get CONTENTS of different CELLS

I have access to a review sheet, regarding the review of web content articles for blogs. I'm one of the reviewers.
Here's an image of the review sheet (I'm sorry, I haven't been granted access to embed images):
EXAMPLE REVIEW SHEET
I want to produce in invoice based on that review sheet. Here's the invoice:
EXAMPLE INVOICE
I understand how to create the link between the two separate spreadsheets, but what I need is this:
In the EXAMPLE REVIEW SHEET I need to look down COLUMN B (INITIALS) for the last instance only of initials 'MF' and make a note of the ROW
Then, I need to scan back up COLUMN B, for 3 more instances of MF, and make a note of the ROWS for all 3 instances.
I now have the last four instances of MF, and the ROWS they appear.
Now in my EXAMPLE INVOICE, I want to populate cells B19-22 with the contents of cells Aw Ax Ay and Az from the EXAMPLE REVIEW SHEET, where w, x, y and z are the 4 ROW NUMBERS that we got from the original LOOKUP.
Here's the link to the actual sheets (all on one spreadsheet for the examples)
ACTUAL SHEETS
For some other invoicing requirements, I found this line of code:
=index(B:B,max(row(B:B)*(B:B<>"")))
Which I know returns the lowest-positioned non-empty cell in a column. But I don't really understand WHY it returns it, I just know that it does. I'm sure some part of the INDEX function can help to return the values I need, but I don't know how.
I'm guessing that what I'm looking for is beyond the fx input on the spreadsheet, and requires a script to be run. Whereas I can sometimes make sense of some basic programming - and by that I mean ANSI 74 BASIC, which is where my knowledge stops - I can't really program using the script editor.
What I'd LOVE is if someone could help me, and also explain the logic behind the solution. I'll probably need it in layman's terms, but I'd really like to start understanding how to manipulate spreadsheets - so I'm really keen to find out HOW something like the INDEX code works, and what the variables mean.
I've tried to fathom the explanations given by Google but, TBH, their way of explaining seems to require that you understand their solution before they explain it to you. The examples are very hard to relate to the formulae, because the description of the variables is not 'human' enough.
If anyone fancies a stab at my problem, and could take the time to explain the logic behind the solution, please know that I'll be forever thankful!
Regards,
Miles
I think this formula will work for you, but unfortunately it's a bit more sophisticated than would make it easy to understand. I placed it in P19 on the Invoice tab.
There are a few different ways to solve your problem, but i wouldn't use INDEX() for any of them.
=ARRAYFORMULA(QUERY({'EXAMPLE REVIEW SHEET'!A2:B,ROW('EXAMPLE REVIEW SHEET'!A2:B)},"select Col1 where Col2='MF' order by Col3 limit 4"))
If you were willing to have a numbering column to the left of the table in the "Review Sheet" it would make all of this much simpler and I could show you how to do it in a way that might make a bit more sense.
Thanks for answering so quickly!
The REVIEW SHEET is maintained by somebody else, but I have editing rights as I need to fill in my review comments. I was planning to keep a linked copy of REVIEW SHEET as a tab in my Work Spreadsheet. If I do this, then there's no problem with adding a numbering column, or any extra columns that you think will help.
Thanks again
Miles

MS Access Reports - Columns Not Showing in Report Correctly

See attached images. I have no idea why but my data refuses to split into a second column. Everything I've searched for makes this seem very easy but I must be missing something. Any help is appreciated.
The answer was basically as posted above - I assumed that the data would split itself into two columns regardless of how much data was present, but really it needed to reach the end of the page before it would split into a second column. I ended up writing an SQL statement to split up the rows into two columns to meet my needs here. Thanks for the help.

google sheets query first row mess

I am designing a workflow at work to streamline some tasks. I get some CSV from a database which I want automatically added to a Google Sheet. I stored it on a Google Drive, got the direct download link and used it with IMPORTDATA on sheet1. So far so good.
The final aim is to create a good way to visualize which rows meet specific conditions, so I thought using a PivotTable might be handy. However, to filter out some of the uninteresting rows, PivotTables are not the way to go, since the filters are quite poor (no possibility of basic filter criteria like =, !=, <, >, etc). So I thought about populating a second sheet with a Query function (with the filtering statements) so that the PivotTable generates a report directly from a filtered source.
The issue (apart from the lag) is that sheet 2 (the one with the query) shows a strange output: the first row, that should contain only the column labels, mixes up the column labels with the value of the cell below them. It is quite baffling. Moreso because it does not happen all along row 1, but it only appears to do so on the first seven columns. So insted of A1 showing "event_id", it actually shows "event_id 106727", which is the value of the fisrt event that should go on A2.
Any thought why this happens?I already checked and there does not seem to be anything wrong with the CSV.
If yyou also have a suggestion of why this whole setup would be a bad idea, please also tell me :P
Thank you!
The query command combines multiple header rows into one. And sometimes it mistakes your data for headers. To avoid this, use the optional third parameter to specify the number of header rows:
=query(range, query_string, 1)
(if there is one header row).
The approach by #user6655984 did not work for me, because I was already using the third parameter to customise my header usage.
What occurred was that I was performing 12 queries to different sheets with similarly data. One column was a mixture of strings, such as "12 FPS", "14fps", and numbers. When I began working my way through these columns on all the sheets, I was left with mostly numbers, with a few strings spread throughout.
This caused my query to create a massive first row which concatenated the results of about 6 rows together, cell by cell, before showing the rest of the results, where in this column I edited, all the strings had been removed.
By happenstance I saw this one person here who talked about fixing a query issue by making sure that they type-converted the information in a column to be consistent.
This led me to find the following Google support forum post, about queries and data types, from 2019: Query function not working with specific data set (but working with others)
Giving this a go, I tried turning all the data in all the columns that were equivalent to each other in each sheet I was querying into numbers fixed the issue. Try this if setting headers is not working; make sure you don't have silent type errors.

(Want to learn) Using Awk/SED/Echo to remove column entries on a CSV

Currently I'm running through an issue on all 50 of my spreadsheets, and I was wanting to learn how could I use Awk||sed||echo to remove column entries in my .csv files. For instance in my columns I have tons of entries that say "null" but I'd like to get that out of my sheet.
If anyone could show me how, I'd really appreciate the kindness! thanks!
My OS is OSX
As obliquely hinted at by choroba, this is far from trivial. However, if you are lucky, then
sed 's/null//g'
should do the trick.