Перейти к публикации

Изучаем MySQL вместе


lifestar

Рекомендованные сообщения

Недавно начал изучать MySQL, в связи с чем есть некоторые вопросы к гуру:

1. Прошёл команду LEFT JOIN, которая позволила мне сэкономить до 15-ти запросов. Теперь вот думаю, не тяжёлый ли получился запрос:

SELECT a.id, a.autor, a.added, a.date_begin, a.date_end, a.title, a.city, b.org, b.photo, b.text, b.manager, u.name FROM anons a LEFT JOIN anons_service b ON a.id = b.id LEFT JOIN user_list u ON b.manager = u.user_id ORDER BY date_begin ASC

2. В чём различие запросов:

SELECT item FROM table WHERE category REGEXP '[[:<:]](1|2|3|4|5)[[:>:]]'

и

SELECT item FROM table WHERE category IN (1,2,3,4,5)

Какой из них при каких случаях используется?

Давайте разбираться вместе! :huh:

Ссылка на сообщение
Поделиться на других сайтах

1. Прошёл команду LEFT JOIN, которая позволила мне сэкономить до 15-ти запросов. Теперь вот думаю, не тяжёлый ли получился запрос:

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

2. В чём различие запросов:

принципиальное отличие, первый покажет результат даже когда в поле category перечисленно несколько значений, второй запрос может работать только когда поле category имеет только одно значение. Но первый вариант гораздо тяжелее второго, т.к. не использует ключи.

Ссылка на сообщение
Поделиться на других сайтах
принципиальное отличие, первый покажет результат даже когда в поле category перечисленно несколько значений, второй запрос может работать только когда поле category имеет только одно значение. Но первый вариант гораздо тяжелее второго, т.к. не использует ключи.
да да да, я дажу думаю переписать запрос. в том плане, что если в новость (элемент) находится в 1-й категории, то работаем по первому запросу)
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

Можно спросить с чего начать задавать запросы в БД ! и если есть примеры составления запросов в БД для чайников !

:blink:

Мой личный совет для начинающих - начните с чтения книжек типа "MySQL для чайников", там все подробно описывается с примерами.

(Ваш покорный слуга до начала работы с DLE в 2005 году вообще не был знаком ни с PHP, ни с MySQL и сегодня считаю себя "продвинутым чайником" :P )

Ссылка на сообщение
Поделиться на других сайтах

Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

×
×
  • Создать...