У меня есть база данных с игровым квадратом (называемая игрой):
id | x | y | isGold
Я программирую, что у меня есть ряд таких коордов:
var test = [
{x:1, y:2},
{x:2, y:4}
]
Я хочу выбрать все строки из таблицы игр:
Select * from game where x and y in (?) where isGold = true, [test] ...
Но проблема в том, что я не знаю, как создать select с объектом. Я могу преобразовать свой массив во что угодно, как я могу сделать запрос для этой проблемы?
Если вы используете пакет mysqljs/mysql npm, попробуйте это:
Select * from game where (x, y) IN (?) where isGold = true, [[[1, 2], [2, 4]]
Посмотрите на doc https://github.com/mysqljs/mysql#performing-queries
Массивы превращаются в список, например ['a', 'b'] превращается в 'a', 'b' Вложенные массивы превращаются в сгруппированные списки (для объемных вставок), например [[a ',' b '], ['c', 'd']] превращается в ('a', 'b'), ('c', 'd')