Size: a a a

DBA - русскоговорящее сообщество

2021 March 09

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Какой-то Хмырь
так а в чем проблема пишешь ORDER BY column_name.
или я вопрос не понял
SELECT DISTINCT A.id, A.src, A.name, A.price
     FROM
       items A
       
     INNER JOIN categories B1
     INNER JOIN item_category C1
       ON A.id = C1.item_id AND C1.category_id IN($id_category_res)
     INNER JOIN dears B2
     INNER JOIN item_dear C2
       ON A.id = C2.item_id AND C2.dear_id IN($id_dear_res)
     INNER JOIN prices B3
     INNER JOIN item_price C3
       ON A.price = C3.item_price AND C3.price_id IN($id_price_res)

Вот такой запрос. Никак не могу поставить ORDER BY B1.id, B2.id, B3.id
И многие не могли помочь.
Там где $id_category_res, $id_dear_res, $id_price_res туда подставляются значения  из (B1.id, B2.id, B3.id)
источник

К

Какой-то Хмырь... in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
SELECT DISTINCT A.id, A.src, A.name, A.price
     FROM
       items A
       
     INNER JOIN categories B1
     INNER JOIN item_category C1
       ON A.id = C1.item_id AND C1.category_id IN($id_category_res)
     INNER JOIN dears B2
     INNER JOIN item_dear C2
       ON A.id = C2.item_id AND C2.dear_id IN($id_dear_res)
     INNER JOIN prices B3
     INNER JOIN item_price C3
       ON A.price = C3.item_price AND C3.price_id IN($id_price_res)

Вот такой запрос. Никак не могу поставить ORDER BY B1.id, B2.id, B3.id
И многие не могли помочь.
Там где $id_category_res, $id_dear_res, $id_price_res туда подставляются значения  из (B1.id, B2.id, B3.id)
это из-за дистинкта. если бы не он, всё бы работало)

добавь колонки, по которым сортируешь в список выводимых столцов
источник

E

Etki in DBA - русскоговорящее сообщество
Vasilyev Sergey
Всем привет! Вопрос по FreeTDS
Есть ли возможность сконфигурировать драйвер без создания /etc/freetds.conf а передать все необходимые параметры в коде (PHP8.0)
Этот драйвер настолько редкая птица, что проще в сорцах найти где этот файл читается м посмотреть нет ли там ещё чего.
источник

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Какой-то Хмырь
это из-за дистинкта. если бы не он, всё бы работало)

добавь колонки, по которым сортируешь в список выводимых столцов
Я пробовал SELECT DISTINCT A.id, A.src, A.name, A.price, B1.id, B2.id, B3.id
     FROM
       items A, categories B1, dears B2, prices B3

но как то не получалось
источник

К

Какой-то Хмырь... in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
Я пробовал SELECT DISTINCT A.id, A.src, A.name, A.price, B1.id, B2.id, B3.id
     FROM
       items A, categories B1, dears B2, prices B3

но как то не получалось
ну а я как-то хз)
источник

К

Какой-то Хмырь... in DBA - русскоговорящее сообщество
ошибка-то какая?
источник

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Ошибка в том, что выдает товары то A.id автоматически.
А нужно сделать чтобы сортировка была не по A.id, а по B1.id, B2.id, B3.id
источник

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Если добавить товар, то тот что первее добавлен, будет выводится первее, независимо от B1.id, B2.id, B3.id
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
Здравствуйте.
Можно ли сделать так, чтобы сортировка (например ORDER BY)
была не по id главной таблице товаров , а по INNER JOIN табличным id? /mysql
Можно
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
SELECT DISTINCT A.id, A.src, A.name, A.price
     FROM
       items A
       
     INNER JOIN categories B1
     INNER JOIN item_category C1
       ON A.id = C1.item_id AND C1.category_id IN($id_category_res)
     INNER JOIN dears B2
     INNER JOIN item_dear C2
       ON A.id = C2.item_id AND C2.dear_id IN($id_dear_res)
     INNER JOIN prices B3
     INNER JOIN item_price C3
       ON A.price = C3.item_price AND C3.price_id IN($id_price_res)

Вот такой запрос. Никак не могу поставить ORDER BY B1.id, B2.id, B3.id
И многие не могли помочь.
Там где $id_category_res, $id_dear_res, $id_price_res туда подставляются значения  из (B1.id, B2.id, B3.id)
У тебя тут не  только в этом проблемы....
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Какой-то Хмырь
это из-за дистинкта. если бы не он, всё бы работало)

добавь колонки, по которым сортируешь в список выводимых столцов
Нет
источник

К

Какой-то Хмырь... in DBA - русскоговорящее сообщество
как нет? при использовании ДИСТИНКТ и сортировки поля, по которым сортируют должны быть в списке выводимых полей.
источник

К

Какой-то Хмырь... in DBA - русскоговорящее сообщество
это, конечно не mysql, но, подозреваю, что правила те же)

мб там есть еще ошибки. это первое, что бросилось в глаза просто
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
Ошибка в том, что выдает товары то A.id автоматически.
А нужно сделать чтобы сортировка была не по A.id, а по B1.id, B2.id, B3.id
Тебя не смущает, что у половины таблиц у тебя нет ON в JOIN ?
источник

К

Какой-то Хмырь... in DBA - русскоговорящее сообщество
кек, слона-то я не заметил))
источник

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Ilia Zviagin
Тебя не смущает, что у половины таблиц у тебя нет ON в JOIN ?
Да, без тех B1, B2, B3 INNER JOIN тоже работает также оказывается.
Это осталось по причини того, что я их заменил на динамические $данные
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
Да, без тех B1, B2, B3 INNER JOIN тоже работает также оказывается.
Это осталось по причини того, что я их заменил на динамические $данные
Хочется надеяться, что ты понимаешь, что делаешь...
источник

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Ilia Zviagin
Хочется надеяться, что ты понимаешь, что делаешь...
Там в ON идут условия, и в этих условиях есть таблицы со связями по id. Получается таким образом через таблицы со связями можно добратся до B1, B2, B3  даже не указывая вхождения в них через INNER JOIN.
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
V. Lavrinovics 🇦🇹
Там в ON идут условия, и в этих условиях есть таблицы со связями по id. Получается таким образом через таблицы со связями можно добратся до B1, B2, B3  даже не указывая вхождения в них через INNER JOIN.
источник

VL

V. Lavrinovics 🇦🇹... in DBA - русскоговорящее сообщество
Что не так? Для чего такая не благотная картинка? Туда в переменные динамически подставляются id.
источник