void FillFields(List <string> fields, List <string> joins, List <string> tables)
        {
            tables.Add(TableName.AsDbName());

            foreach (var f in Fields)
            {
                fields.Add(f.Name.AsDbName());
            }

            if (this._childDirectories != null)
            {
                foreach (NormalizeInfo childDirectory in this._childDirectories)
                {
                    joins.Add(string.Format(
                                  "{0} = {1}.{2}",
                                  childDirectory.GetAsFk(),
                                  childDirectory.TableName.AsDbName(),
                                  "rowid"
                                  ));

                    childDirectory.FillFields(fields, joins, tables);
                }
            }
        }