Tables are more on the, advanced side of the scripting spectrum.
They are not very hard to learn, but are used in many ways.

Tables main use is to store values.
Let's create a table, which is very easy. Insert a script where ever you would like to, and type this into it:

yourTableNameHere = {}

See! That was easy!
But now it needs values. Let's store some simple values in there, a string, a number, a boolean, and a Part.
Create a part in workspace, name it what you want.

yourTableNameHere = {"string1", 4, false, workspace["Part Name"]}

Now there are 4 values. Let's print them out.

yourTableNameHere = {"string1", 4, false, workspace["Part Name"]}
function func()
    print(yourTableNameHere)
end

This will print out a number. This is the tables ID. To access values, type [1] through however many you have. Let's say I want to print 3 of the values, in the order of "string1", false, then 4. Lets try it!

yourTableNameHere = {"string1", 4, false, workspace["Part Name"]}
function func()
    print(yourTableNameHere[1])
    print(yourTableNameHere[3])
    print(yourTableNameHere[2])
end

Now, you might be thinking: 'Why did you type [1],[3],[2]? There are no numbers labeled 1,3, OR 2!
[1] shows the first value in the table. typing print(yourTableNameHere[#]) means it prints the place it is in on the table.

Well, that's the tutorial!
Have a request? Reply to one of my posts asking for something! I will think about it, and try and come up with a tutorial!