Free Lessons
Courses
Seminars
TechHelp
Fast Tips
Templates
Topic Index
Forum
ABCD
 
Home   Courses   TechHelp   Forums   Help   Contact   Merch   Join   Order   Logon  
 
Home > TechHelp > Directory > Access > Quick Queries > QQ36 < QQ35 | QQ37 >
Quick Queries #36
By Richard Rost   Richard Rost on LinkedIn Email Richard Rost   12 months ago

Use DLookup Not DCount, Query Properties, More!


 S  M  L  XL  FS  |  Slo  Reg  Fast  2x  |  Bookmark Join Now

In this Microsoft Access tutorial, I will show you how to efficiently check for related records using DLookup instead of DCount, discuss generating random order numbers, explain the difference between DISTINCT and DISTINCTROW in query design, demonstrate using SQL and query builders in forms and controls, offer tips for searching my website for specific topics, and answer questions about reminders for updating holidays in your database.

Prerequisites

Links

Recommended Courses

Up Next

Learn More

FREE Access Beginner Level 1
FREE Access Quick Start in 30 Minutes
Access Level 2 for just $1

Free Templates

TechHelp Free Templates
Blank Template
Contact Management
Order Entry & Invoicing
More Access Templates

Resources

Diamond Sponsors - Information on our Sponsors
Mailing List - Get emails when new videos released
Consulting - Need help with your database
Tip Jar - Your tips are graciously accepted
Merch Store - Get your swag here!

Questions?

Please feel free to post your questions or comments below or post them in the Forums.

KeywordsMicrosoft Access Quick Queries #36

TechHelp Access, DCount vs DLookup, using DLookup to check related records, unique values vs unique records, DISTINCT vs DISTINCTROW, query properties sheet, aggregate queries, sequential order numbers, generating random order numbers, SQL query builder in forms, editing Row Source SQL, advanced query options, search function limitations, DLookup multiple criteria, Access Index page, database reminders for holidays, Timer event reminders, OnOpen event reminders, finding TechHelp videos, channel membership options

 

 

 

Comments for Quick Queries #36
 
Age Subject From
12 monthsQQ36 Upload FixedRichard Rost

 

Start a NEW Conversation
 
Only students may post on this page. Click here for more information on how you can set up an account. If you are a student, please Log On first. Non-students may only post in the Visitor Forum.
 
Subscribe
Subscribe to Quick Queries #36
Get notifications when this page is updated
 
Intro In this video, we'll talk about a variety of Microsoft Access topics including why DLookup is better than DCount for checking if related records exist, options for creating random or sequential order numbers, how to use unique values and unique records in query properties, and the difference between DISTINCT and DISTINCTROW. We'll also discuss best practices for editing SQL in forms and combo boxes, using the property sheet, and setting up date-based reminders with DLookup. Other viewer questions include finding videos on my website and information about joining as a channel member.
Transcript This is Quick Queries Episode No. 36. There are 35 other ones before this if you really want some punishment, go watch all of them.

What are Quick Queries? Well, they are quick answers to queries, and I put a whole bunch of them together in one video, and I answer your questions and stuff like that. So, all right, let's get to it.

First up is a question from Richard, one of my silver members. He posted it in the forums on my website, and his actual question does not really mean that much, but I wanted to point something out that he is doing in his code that I know will help a lot of people.

He is basically checking to see if the user has any records. For example, you want to check and see if a customer has any orders. And he is using DCount. Basically, he is looking for whether they have zero or not zero. And if you have any, then do this open query that deletes those supporting records. But the point I want to bring across here is don't use DCount if all you're doing is looking to see if there are or are not related records. If you're looking to see if a product is being used in any order, don't use DCount for that because if you use DCount, it is going to literally go down the entire set of records, or at least start at the beginning, run to the end, and have to go through all those records to give you a count.

What you want to do instead is just use DLookup, and that's what I answered him down here. It says just use DLookup because you're going to look up an ID, you're going to wrap that in NZ, right, Null Zero. And if it returns any value, then that means there are records, and that's a whole lot faster than using DCount.

So that should speed you up somewhat for now. There is actually a faster third method that I am going to cover in a full TechHelp video next week. So look for that. The title is going to be called Do Records Exist. I'll put a link to it down below, but it does not exist yet. The record does not exist and the video does not exist. So when it does exist, the link should work.

Next up, a question on YouTube from Jade Dragon. First off, he says, I don't know if you have any interest in doing it, but Friday's Quick Queries could be a great candidate for something to do live. I used to try doing live sessions, but unfortunately, that's just not a good thing for me.

I was assaulted a few years back and it left me blind in one eye, and I've got some broken bones in my face and some nerve damage. Because of that, I get really random weird migraines and sometimes I just have to go lay down. So I've tried doing live stuff in the past, but I just can't commit to a schedule and do an hour-long live session and then halfway through it I have to excuse myself. That is why I prefer doing pre-recorded stuff. I can record at my own pace, I can pause when I have to, and I can go lay down if I need to. That is why I prefer this format, but it's a great idea. Thanks.

He also says, maybe an order number could be a six or seven digit number, which is generated by a random number. That is certainly possible. I've had clients in the past that liked using random numbers for things like that. Just generate a random number, check to see if it exists. If it does not, you're good. If it does exist, generate again. Depending on how long your number sequence is, it should not be a problem to do. You certainly could do that.

I've got several videos where I cover generating random numbers. I like sequential order numbers myself for each customer, and I have a video on that too, where every customer has their order numbers in sequence. So a customer can always check their own orders, and if they're missing an invoice, they'll know, because their orders are, let's say their customer number is 111, it would be 111-1, 111-2, and so on. That is the way I like doing it in a full production video or a database.

And for this last thing, Troopers Travel is nice knowing your band. I do not know what that is. I have not seen anything from a Troopers Travel. I have not had to ban anyone in a long time.

I will only ban someone if they are rude or say nasty things. I'd never ban someone just for disagreeing with me or telling me that I am doing it the wrong way. I like learning new methods of doing things, and if I am doing something wrong, I definitely want to know about it. So you would never get a ban for that.

The only people that I have had to ban in the past, and there have not been many, are either people who post spam. I have no tolerance for that. If you post a spam link trying to get people to go to your channel, get out of my comment section. Those people get banned instantly, or people who post rude things.

I try to keep stuff like politics and religion and all that off my website and off my channel because I just do not want to deal with that in a professional setting. I'll deal with it on my personal Facebook page and stuff, but not here. Keep it off my channel. But I have not banned anyone in a while. So maybe this person deleted their own comment before I saw it. I don't know.

Also, Jade Dragon, I still have your email in my inbox. I'll be getting back to you soon. So do not worry about that. I've just had a busy couple weeks.

Dalsky Bo says, hey, thanks Richard. Just came across this. This is what I was going on. Not much. What's going on with you? How are you doing?

Next up, we got our yeet and or is it right at time? Whichever you want to go. Quick Query suggestion - in the query design mode, with the properties when it will open, perhaps a quick mention of a few things, mainly the existence of other options. They have unique values, unique records, and these generate DISTINCT and DISTINCTROW and all kinds of different cool stuff.

It is funny that you bring this up because on my calendar later this month, I have scheduled to do a TechHelp video on DISTINCT versus DISTINCTROW. Basically, in a nutshell, DISTINCT looks at just the fields you select, whereas DISTINCTROW looks at the entire row of the table behind the scenes. We will get to that in more detail in a TechHelp video. I also covered it in my SQL Seminar.

You can find that stuff if you go into a query, go into design mode. Most people do not know, but there is a big property sheet. Hit Property Sheet up here, or you can right click down here and go to Properties. This thing pops up. Depending on where you click inside of here, you can see all kinds of extra options.

Most of the time I do not bother with this. I almost never need to go in here. But here are the two things: You have unique records and unique values. These two things here - that is the same as DISTINCT and DISTINCTROW.

Usually, when I want to group things with distinct values, I just use an aggregate query, which is this guy here. I have covered this in a lot of different videos, and I honestly can't remember the last time in a real production video I've needed to use unique records, because unique records will look at the entire row. It looks even at the autonumber, so the row must be completely unique, including that, and that almost never happens in my databases because I almost always use an autonumber.

Some of the things like Top Values are kind of cool, but you can do that here. That is how many records get returned. If you want just five, twenty-five, whatever, how many records you want--ninety-five records, type 95 in there. You have your record locks and more advanced options like the source database. You can connect a query to a different database, like an SQL Server database. All kinds of stuff you can do in here.

I cover most of this stuff in my more advanced classes, but I do not often use this stuff, honestly.

I get this comment once in a while: If you want to give a tutorial, just don't assume the user knows everything. I try not to assume that the user knows anything. That is why I give prerequisites at the beginning of most of my videos. I try to say, if you are going to do this, go watch these other videos first so that you know what you need to know coming into this video.

But my TechHelp videos are whatever topic I feel like covering that day, and if there are prerequisites and things you need to know, I'll try to tell you. If not, sorry.

My full course does not work like that. My full course, if you take it from Beginner Level 1 and then just follow the lessons in order, I do not assume you know anything except what I have taught you previously. That is why I tell people not to skip around. So if you want to learn the right way from the beginning, start with Beginner 1 and work your way up.

The TechHelp videos are usually a specific question or something specific to a problem or just random stuff.

Giovanni says, I noticed that you never use the query design option inside forms, reports, list boxes, or combo boxes. Is there a reason why? I figured that maybe you want to keep it simple for teaching purposes. I use it a lot. I do not like having too many queries displayed in the list. I agree. I do not like to have too many queries in my Database Window or Navigation Pane, whatever you want to call it. I try to take those and actually make them SQL.

What he is saying is, in every form, for example, you have the properties, you got Data right here, you got customerT, you can click this little guy right there and make a query builder. See, and then you can put whatever you want in here. This works in combo boxes; this works in list boxes.

You're right. I do not use this that often. I prefer just writing the SQL myself, because if you do something like this - if you say, give me this, this, and this, and let's sort it by last name, and then we'll save it and close it - what that does is it puts that SQL straight in here. See, this is what I'm used to writing.

So I have two different levels. For my beginner classes, I want them building queries, I want them to get used to making queries. You might have a lot of them by the time you're done, and then after that, I tend to go into here and just work straight in SQL. I almost never invoke this query builder right there. Why? I just do not know.

I think probably because when I started using Access, I don't think it existed. So I got used to one of those two things. If it is complicated, I'll make an actual query. If it is basic SQL, I'll write it myself in SQL. I almost never use this query builder. That is probably why. But you're right. I don't use it.

Once in a while, it is nice if you want to tweak something, like here is a combo box. This picks a list of customers. You can come into here, go to the Row Source, hit the query builder, and it will pop up in the query designer what that SQL really is. There it is. That is what's in that little box. If you want to, you can come in here and make changes and do stuff, and then when you close this, it rewrites that SQL statement back on there.

But again, once I get past the beginner stuff, I just come in here and just edit this myself. Another thing I do not like about that query designer is it fluffs up your SQL. For example, if I got something based on only one table or query, I get rid of that. I write cleaner SQL. I do not put brackets around stuff. That would be my final SQL right there.

A lot of the wizards and things like the query builder add too much extraneous information. You do not need all that.

So, several reasons why I do not particularly like it. But if you like it, great. Use it. There is nothing wrong with it. It's just one of those tools. There's a dozen ways to do everything in Access, just pick the one that works best for you.

Very good question and great observation.

Gary says, I wish I could rank your most useful videos. I try to bookmark any of the ones that I know I am going to need one day. When I first started watching, what a clever trick. Now that I am doing this more professionally, I find myself pulling my hair out, because I know for a fact that I learned something specific from you, but I can't find the video for a refresher and searching your website never works for me. My searching on my website is rudimentary at best. Do not worry. I'm sure it is just a me thing and not a you thing. I need my own custom way to find things, and searching in a search box never works for me personally. Anyway, great job.

Then Nigel says, sounds like you need a way to keep track. Maybe a database of some kind. Perfect.

A couple things here - ranking my most useful videos. That would be cool. I would like it if you guys would do that. Pick your three favorite videos. There are like a thousand of them now, so it is going to take you a while to go through them all.

When it comes to finding stuff on my website, I do have a basic search box over here, but it only looks for keywords. It's not good like Google at searching for phrases. So if you type something like DLookup and do a search on that, it should give you my handpicked ones up top, search index, there are the TechHelp videos where I talk about DLookup, and there is the main one right there.

All of these videos have DLookup in their keywords. Here is where I cover it in my course outlines. As you can see, it is covered a lot. In news and headlines, there are other articles I posted about it. In the code vault, if you are a gold member, you can see my DLookup Plus, for example. These are all comments and headlines and stuff.

Sorry for jumping around. My scroll wheel is starting to go now. Down here at the bottom, there are a couple things. There's "Show All Results" because I only show 20 per search hit. If you hit "Show All," it will continue going. I also have this Google search for DLookup, and what that does is it throws that search phrase into Google, specific to my site.

This is better at finding long tail keyword phrases. So, for example, let's say you're looking for a DLookup with multiple criteria. Enter. Now it does not see you in here. I say if you search for a multi-word phrase, try using Google, you can hit the Google search right there. Let's see. Yep, DLookup multiple criteria. It is much better at finding more complicated keyword hits.Because as you can see, my search index doesn't. Yeah, there's nothing, probably because of that word. I should strip words like that out. Do you look up multiple criteria? Let's see if anything comes up. No, it's still empty.

But that's why I've got the Google search option there too, so that should help you find it. They do a lot better. I'm not a search engine. I built a really simple search engine, and it gets the job done for me.

But yeah, there's also this thing here, which is the Access Index. Now, this is an index of all of my courses and all of the TechHelp videos and all of my seminars and everything in one big long page.

And again, it's just keywords, but you can do a Control F to find stuff. So if you put in multiple criteria, see, it'll bring it up wherever it finds multiple criteria.

There's the look up. So whatever you're looking for, there are ways to find it. You just have to learn how to use it on my site. But that's why I have the Google search option on my site. Now that brings me to the next thing.

If you are searching for something and you are even using YouTube search or Google search and you do not find what you are looking for, I want to know about it. Part of the reason why I started the TechHelp video series was to address specific questions and problems that people have that I may or may not have covered in my course.

Let's say I covered DLOOKUP and I didn't cover the specific instance that you're looking for. That's where the TechHelp videos come in. The number one reason I started that was to answer questions and to help people out. The secondary reason is because if someone is searching for something on Google or YouTube, I want my video to show up. My most important motivation is that I want to help them, but I also want them to watch my video because hopefully they'll become a member.

That's how I run my business. So if you search for something on YouTube or Google or Bing or wherever else you are searching and my video does not show up, I want to know exactly what you are searching for.

If I do not have a video with those keywords, I'll make one. That's my thing. A lot of the videos I am making now are just because people say, hey, I tried searching for this and I didn't find it. I want to know what your search phrase was. Let me know.

And yeah, make a database. And yeah, everyone out there, I want to know what your most favorite videos of mine are, the most useful videos. Post in the comments down below. I'm really curious now. I should do a poll or something.

Post some comments and I'll take the most popular ones from those comments and put a poll together. How does that sound?

Sometimes I just like to have fun with people in the comments. Like this person, Shafiq said, V good, which I know is very good, and thank you very much for the compliment.

V was an awesome series. Anybody remember the series V? Remember these guys? I loved this series when I was a kid.

I just want to take a moment to say thanks to all the people who leave nice comments for me. It really makes my day. I really enjoy it.

I go through all these comments as often as I can, and just to see so many of you post such nice things, I really appreciate that.

Thank you very much for watching. I'm glad that you enjoy what I do, because I really love what I do.

Once in a while I get some comments in another language that I have to use Google Translate for. I'm very thankful for Google Translate. I use it a lot.

This person says, I'm guessing that's "excellent video." I can read that much.

But then it says, how can I become a channel member. I get a lot of people from around the world asking how to join.

Usually you'll see a blue Join button right under the video on YouTube. If you don't see it, then channel memberships might not be available in your country.

That's a YouTube thing, not a me thing. So if that's the case, you could try signing up directly on my website, which is right here, 599CD.com/join.

You can sign up on my website. The only downside is then you'll have to watch the extended cut videos and all that on my website.

You won't be able to watch them on YouTube because it's two completely different membership systems. So there you go.

Myster EMH says, I've implemented a date calculation. I have a table of holidays. It contains a couple years of holidays: last year, this year, next year.

Is there a way for the database to remind me, perhaps toward the end of next year, to populate with more holidays? Of course, there is a way to do so. I'm not going to say always, but there's usually a way to do most things.

What I would do is hard code in a specific holiday, like a reminder for making more holidays.

Then you've got to trigger it somehow. I would maybe trigger it in the OnOpen event of your main menu. So when the database starts up, you could DLOOKUP that specific event, maybe by ID.

You'll know what its ID is once you edit the table. Then just check to see if you're past that date, and if so, throw up a reminder.

I just happen to have a video that shows how to do that. You can do this. This one here uses a timer event, so you can leave a form running and it'll pop it up at times throughout the day.

You don't even have to go that far. If yours is just based on a date, you just check once when the database starts, and if it's that date, pop up your reminder message.

Check this one out. I'll put a link down below. Still getting lots of comments on my April Fool's joke. I love putting on an April Fool's prank every year, especially to the people that don't know me and don't know I've been doing this for like 15 years.

Thanks for all the fun comments. I got some really cool ones. Well folks, that's going to do it for Quick Queries 36. Enjoy your weekend.

Hope you learned something. Live long and prosper, my friends. I'll see you next time.

TOPICS:
Using DLookup instead of DCount to check for related records
Generating random order numbers and checking uniqueness
Sequential order numbering for individual customers
Using unique values and unique records in query properties
Explanation of DISTINCT versus DISTINCTROW in queries
Using the property sheet in Access query design mode
Top Values property for limiting query results
Connecting an Access query to an external SQL Server database
Custom SQL statements in form and combo box row sources
Differences between building queries in query design vs SQL view
Why not to use query builder in form/report row sources
Simplifying SQL by manually editing SQL statements
Setting up reminders for future dates using DLookup
Triggering reminders on database startup via the OnOpen event

COMMERCIAL:
In today's video, we're discussing a range of viewer questions in Quick Queries Episode 36. You'll learn why using DLookup can be faster than DCount for checking related records, and I'll explain a bit about generating random order numbers in Access. We'll talk about options like DISTINCT and DISTINCTROW in query design, and why I usually avoid the query builder inside form properties. I also explain some simple ways to find videos on my website, and why I prefer pre-recorded sessions instead of going live. Plus, we'll cover how to set up reminder messages in your database and address how to become a channel member if that option's not available on YouTube in your country. You'll find the complete video on my YouTube channel and on my website at the link shown. Live long and prosper my friends.
Quiz Q1. What is the main reason the video recommends using DLookup instead of DCount when checking if related records exist?
A. DLookup is faster because it stops at the first match rather than counting all records.
B. DLookup provides more detailed information about related records.
C. DCount is not available in all versions of Access.
D. DLookup can return multiple records at once.

Q2. What is the correct method to check if a random order number is unique when generating one for a customer?
A. Generate a random number, use DLookup to check if it exists, generate again if necessary.
B. Assign any random number without checking for duplicates.
C. Only use sequential numbers; random numbers are never unique.
D. Use DCount to generate order numbers.

Q3. Why does the presenter prefer pre-recorded videos over live sessions?
A. He has technical difficulties with live streaming.
B. His schedule is unpredictable due to medical issues from an assault.
C. He gets too many negative comments during live sessions.
D. Pre-recorded videos allow more interaction with viewers.

Q4. In Access query design, what is the difference between DISTINCT and DISTINCTROW?
A. DISTINCT operates on selected fields, DISTINCTROW evaluates the entire row.
B. DISTINCT filters duplicate columns, DISTINCTROW filters duplicate forms.
C. DISTINCT counts all records, DISTINCTROW deletes duplicates.
D. DISTINCT is used for calculations, DISTINCTROW is used for sorting.

Q5. Why does the presenter rarely use the Property Sheet or unique records/values options in query design?
A. He finds them confusing and unreliable.
B. He prefers aggregate queries and SQL for most tasks.
C. They are only available in the latest version of Access.
D. These options slow down the database significantly.

Q6. According to the presenter, when is it appropriate to start writing SQL directly instead of using query design tools?
A. After gaining enough experience and understanding the basics.
B. Only when working with forms and reports.
C. Never; query design tools should always be used.
D. Right from the first beginner lesson.

Q7. What is one disadvantage of using the query builder inside form or control properties according to the presenter?
A. It generates more complex and less clean SQL than writing it manually.
B. It cannot sort records properly.
C. It deletes previous queries without warning.
D. It has limited functionality compared to the navigation pane.

Q8. How does the presenter recommend finding specific content on his website if the built-in search is not effective?
A. Use the provided Google search option for better keyword phrase matching.
B. Try searching on competitor websites.
C. Submit a support ticket for all queries.
D. Only use single-word keywords in the search box.

Q9. What is the presenter's primary motivation for creating TechHelp videos?
A. To address specific user questions and ensure searchable coverage of database problems.
B. To promote his website exclusively.
C. To cover broad concepts without reference to specific problems.
D. To increase YouTube subscriber count only.

Q10. What should you do if you cannot find a video for your specific Access question on the presenter's site?
A. Contact the presenter and let him know your search phrase.
B. Search endlessly until you find something similar.
C. Look only on YouTube for unrelated content.
D. Try to solve the issue without help.

Q11. What is a suggested way to trigger a reminder in Access when more holidays need to be added to a table?
A. Use the OnOpen event of a form combined with DLookup on a specific date.
B. Create a complex macro that runs every hour.
C. Only manually check the table once a year.
D. Use VBA code that emails the user every day.

Q12. Why does the presenter suggest starting his full course at Beginner Level 1 rather than skipping around?
A. Each lesson builds on knowledge from previous lessons.
B. There are no prerequisites for taking any lesson at any time.
C. The advanced lessons are only available after completing quizzes.
D. Content is repeated in each lesson, so order is irrelevant.

Q13. For membership content, why might someone not see the "Join" button on YouTube to become a channel member?
A. Channel memberships are not available in their country.
B. The presenter needs to manually approve every new member.
C. The YouTube browser is outdated.
D. Membership is only available on the presenter's website.

Q14. In what way does the presenter encourage feedback and new video suggestions from viewers?
A. He asks to be informed of specific search phrases that did not return helpful results.
B. He disables YouTube comments to keep feedback private.
C. He ignores search requests and only makes videos on random topics.
D. He only accepts suggestions from paid members.

Answers: 1-A; 2-A; 3-B; 4-A; 5-B; 6-A; 7-A; 8-A; 9-A; 10-A; 11-A; 12-A; 13-A; 14-A

DISCLAIMER: Quiz questions are AI generated. If you find any that are wrong, don't make sense, or aren't related to the video topic at hand, then please post a comment and let me know. Thanks.
Summary In today's Quick Queries video from Access Learning Zone, I will be answering a variety of your questions relating to Microsoft Access and general database management. Quick Queries are designed to provide efficient, to-the-point responses to several audience questions compiled into one video.

Let me begin with a question from Richard, a silver member who posted in the forums on my website. His actual question is not as important as the concept I want to highlight, which will benefit many users. He was checking if a customer has any related records, such as whether a customer has orders, using DCount. Although DCount can do the job, I recommend using DLookup instead when you only need to check for the existence of related records. DCount will count all qualifying records and can be slow, especially with large sets. DLookup only needs to find the first matching record and stops, making it much more efficient for this scenario. Wrap DLookup in the NZ function to ensure you do not get a null result. This small change can improve your application's performance significantly. I will have another TechHelp video coming up soon that discusses an even faster method for checking if records exist. Watch for a video titled "Do Records Exist" coming soon.

Next, Jade Dragon asked on YouTube about the possibility of making Quick Queries live sessions. While having a live session is an interesting idea, I have ongoing health issues that make it difficult to commit to scheduled live events, so I stick with pre-recorded content. This way, I can record at my own pace and take breaks when necessary.

Jade also brought up the idea of generating order numbers using random six or seven-digit numbers. This is certainly possible. Just generate a random number, check if it is already in the database, and if it is, generate a new one. This method works well unless you have so many records that collisions become frequent. I personally prefer sequential order numbers for each customer because it is easier for customers to track their orders. For instance, if the customer number is 111, their orders might be numbered 111-1, 111-2, and so on.

As for questions about banning people from my forums or channels, I rarely ever ban anyone unless they are posting spam or are being rude or disrespectful. Differences of opinion are always welcome, and I encourage learning through discussion.

A comment from Dalsky Bo simply checked in to say hello. In the community here, we do have a lot of informal friendly interaction.

Now let's discuss a suggestion from another viewer about the query design properties, specifically the Unique Values and Unique Records options in Access. These correspond to the SQL DISTINCT and DISTINCTROW keywords. DISTINCT returns unique values from the selected fields, while DISTINCTROW examines the entire row, including fields that may not even be in your query. Typically, I use aggregate queries when I need distinct values, so I seldom need DISTINCTROW, especially because I almost always work with autonumbers making each row unique by default. There are other interesting options in the query properties, such as Top Values, Record Locks, and the Source Database, but many of these are topics I cover in more advanced classes.

I get feedback from people asking me not to assume prior knowledge in my tutorials. I intend to provide prerequisite recommendations at the start of most videos so you can get up to speed before tackling more advanced topics. My comprehensive courses start at beginner level and build step by step, but TechHelp and Quick Queries often focus on specific issues and solutions, so some background knowledge is expected.

Giovanni mentioned that I rarely use the query design builder inside forms, reports, list boxes, or combo boxes. My reason for this is that I prefer to limit the number of queries displayed in the Navigation Pane, and I also like being able to write SQL directly. While Access does provide a query builder for these controls, and you can use it if you like, I usually write or edit the SQL statements myself, especially as the code generated by the builder often contains unnecessary brackets or other items I find extraneous. For beginners, building queries visually is fine, but once you gain confidence, it can be more efficient to edit SQL directly.

Gary mentioned having a hard time keeping track of the most useful videos. I appreciate those of you who bookmark or make lists, and I would find it helpful if you shared your top three favorite videos in the comments. My site's search function is straightforward and works for direct keywords, but not as well for full phrases. That is why I also offer a Google search option that restricts results to my website for better handling of multi-word terms. There is also a complete index page for my courses, seminars, and TechHelp videos, where you can use your browser's find function to locate specific content.

If you try searching my site, YouTube, or Google for a topic and do not find what you need, please let me know what you searched for. This helps me create new videos that target specific needs and answer real problems users are facing. Much of my video content now comes from such questions.

Sometimes the comments section brings up a bit of humor or nostalgia, such as one user referencing the series "V," which I enjoyed as a kid. I also appreciate all of the positive feedback and kind comments, including those in various languages. Thanks to Google Translate, I am able to understand and respond to everyone.

I sometimes get questions about how to become a channel member. The easiest way is to use the Join button under my videos on YouTube, but if channel memberships are not available in your country, you can become a member on my website directly. Please note that YouTube and my website use separate systems, so access to extended cut content will differ depending on where you sign up.

Myster EMH asked about setting up a date reminder for adding more holidays to a holidays table. Yes, you can do this. My usual approach is to set up a specific reminder record in the holidays table, and have an OnOpen event in the database's main menu form that checks whether today is past that date. If so, display a reminder. This is a solid way to prompt you to update your holidays each year. I have a video that covers a similar technique using timer events if you want things triggered more than once per day, but a simple date check on startup should suffice for most cases.

I am also still receiving lots of funny and positive feedback on my yearly April Fool's jokes, and I enjoy reading your responses.

That about wraps up Quick Queries Episode 36. I hope you found these questions and answers helpful and maybe picked up a few tips you can use in your own work.

If you want a complete video tutorial with step-by-step instructions on everything discussed here, you can find it on my website at the link below.

Live long and prosper, my friends.
Topic List Using DLookup instead of DCount to check for related records
Generating random order numbers and checking uniqueness
Sequential order numbering for individual customers
Using unique values and unique records in query properties
Explanation of DISTINCT versus DISTINCTROW in queries
Using the property sheet in Access query design mode
Top Values property for limiting query results
Connecting an Access query to an external SQL Server database
Custom SQL statements in form and combo box row sources
Differences between building queries in query design vs SQL view
Why not to use query builder in form/report row sources
Simplifying SQL by manually editing SQL statements
Setting up reminders for future dates using DLookup
Triggering reminders on database startup via the OnOpen event
 
 
 

The following is a paid advertisement
Computer Learning Zone is not responsible for any content shown or offers made by these ads.
 

Learn
 
Access - index
Excel - index
Word - index
Windows - index
PowerPoint - index
Photoshop - index
Visual Basic - index
ASP - index
Seminars
More...
Customers
 
Login
My Account
My Courses
Lost Password
Memberships
Student Databases
Change Email
Info
 
Latest News
New Releases
User Forums
Topic Glossary
Tips & Tricks
Search The Site
Code Vault
Collapse Menus
Help
 
Customer Support
Web Site Tour
FAQs
TechHelp
Consulting Services
About
 
Background
Testimonials
Jobs
Affiliate Program
Richard Rost
Free Lessons
Mailing List
PCResale.NET
Order
 
Video Tutorials
Handbooks
Memberships
Learning Connection
Idiot's Guide to Excel
Volume Discounts
Payment Info
Shipping
Terms of Sale
Contact
 
Contact Info
Support Policy
Mailing Address
Phone Number
Fax Number
Course Survey
Email Richard
[email protected]
Blog RSS Feed    YouTube Channel

LinkedIn
Copyright 2026 by Computer Learning Zone, Amicron, and Richard Rost. All Rights Reserved. Current Time: 4/30/2026 11:47:53 AM. PLT: 1s
Keywords: TechHelp Access, DCount vs DLookup, using DLookup to check related records, unique values vs unique records, DISTINCT vs DISTINCTROW, query properties sheet, aggregate queries, sequential order numbers, generating random order numbers, SQL query builder i  PermaLink  Microsoft Access Quick Queries #36