Объединение двух таблиц - MySQL (220487)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Прошу помочь разобраться в этой путанице. В mysql я разбираюсь не так хорошо, как хотелось бы. Сразу извиняюсь, если вопросы покажутся глупыми, а решения довольно таки не сложными. Вообщем, есть две таблицы mysql, одна предназначена для авторов, другая для стихов. Код mysql таблицы следующий:
CREATE TABLE name_table (
random INT(32),
random2 INT(32),
random3 INT(32),
random4 INT(32),
random5 INT(32),
random6 INT(32),
random7 INT(32),
random8 INT(32),
random9 INT(32),
random10 INT(32),
random11 INT(32),
random12 INT(32),
RID INT(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (RID));
Это таблица для авторов. Таблица для стихов выглядит также:
CREATE TABLE table_stih (
name INT(32),
name2 INT(32),
name3 INT(32),
name4 INT(32),
name5 INT(32),
name6 INT(32),
name7 INT(32),
name8 INT(32),
name9 INT(32),
name10 INT(32),
name11 INT(32),
name12 INT(32),
RID INT(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (RID));
Вопрос 1: Какой тип лучше использовать для хранения этих самых стихов? Прочитал, что тип TEXT идеально подходит для текстов, но он не работает с Auto_increment, поэтому пришлось поставить тип INT. Вопрос 2: Как, собственно объединить 2 таблицы? Дело в том, нужно будет делать запрос из двух таблиц. Нужно сделать запрос на выбор всех фраз, которые пренадлежат каждому автору. Для 1 автора может быть выбрано несколько стихов. Нужно сделать уникальный id для каждой из таблиц, и при вызове допустим id = 2 делать запрос на выбор всех фраз, которые соответствуют id = 2 . Вопрос 3: Самый глупый вопрос, пожалуй, но без него никуда: Как хранить те самые стихи в таблице? Куда нужно их вписывать?

Решение задачи: «Объединение двух таблиц»

textual
Листинг программы
SELECT * FROM name_table, table_stih WHERE name_table.RID = table_stih.RID;

Объяснение кода листинга программы

В представленном коде выполняется операция объединения (JOIN) двух таблиц name_table и table_stih по полю RID. Результатом запроса будет выборка всех полей из обеих таблиц, которые соответствуют условию объединения. Вот список действий, которые выполняются в данном коде:

  1. SELECT - выборка данных из таблицы.
      • выбор всех полей.
  2. FROM - указание источника данных.
  3. name_table, table_stih - перечисление таблиц для объединения.
  4. WHERE - указание условия для объединения.
  5. name_table.RID = table_stih.RID - условие объединения по полю RID. Таким образом, данный запрос выбирает все поля из таблиц name_table и table_stih, которые имеют одинаковое значение в поле RID.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.667 из 5