powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Язык Lua - как сравнить содержимое двух таблиц в Lua?
1 сообщений из 1, страница 1 из 1
Язык Lua - как сравнить содержимое двух таблиц в Lua?
    #38129355
nvrrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, уважаемые форумчане!

Подскажите, пожалуйста, как сравнить содержимое двух таблиц в Lua?

Например, есть строка ввода в SQL, которая в Lua является (по типу) таблицей:
Код: python
1.
DocumentRecord5 = {'doc5', 'type5', 'DOCsource5$$', 'body5'}


Вводим эту строку в таблицу SQL (DOCUMENTS).
Строка введена верно без ошибок.
Считываем строку и таблицы такой вот Lua -обёрткой
Код: python
1.
Select(db, "SELECT * FROM DOCUMENTS WHERE DOC_ID=1;")



где функция Select имеет вид
Код: python
1.
2.
3.
function Select(db, sql, record)
    for a in db:rows(sql) do return a end
end



функция Select возвращает таблицу.

Полученная таблица и вставленная одинаковые, но как их можно правильно сравнить в Lua?

Был вариант:
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
-----------------------
-- @return  равны ли два массива по длинне и по значениям.
function is_equal(tbl1, tbl2)

    if #tbl1 ~= #tbl2 then return false end
        
            for i=1,#tbl1 do
                if tbl1[i] ~= tbl2[i] then return false end
            end
    return true;
end
---------------------


Но два массива равны только если они равны по типам (например амссив чисел можно сравнить с массивом чисел.
Иначе всегда фальш, даже в случае если таблицы равны.

Подскажите, кто сталкивался и не сталкивался, свои мысли по решению этого вопроса.
Заранее спасибо!
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Язык Lua - как сравнить содержимое двух таблиц в Lua?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]