|
|
|
| Есть две таблицы:
В первой содержатся данные
id int primary key
существительное, text
индекс: int NULL
вторая содержит данные:
id int primary key
прилагательное text.
Таблицы связаны с помощью полей tbl1.индекс и tbl2.id
как построить запрос таким образом, чтобы получить результирующую таблицу с данными
существительное- прилагательное, при условии, что некоторым существительным не соотнесено прилагательное и столбик индекс остался пустым, нужно это отбразить, то есть полусить в результате что-то типа
сущ1 - прил1
сущ2 - прил2
сущ3 - 0
сущ4 - прил 4
Запрос типа
select `tbl1`.cуществительное, `tbl2`.прилагательное where `tbl1`.индекс=`tbl2`.id выводит только те строки, где существительному сопоставлен какое-нибудь прилагательное, а те случаи, где нет - игнорирует :( | |
|
|
|
|
|
|
|
для: Elena_S
(12.12.2011 в 17:58)
| | Можно начать отталкиваться от следующего запроса
SELECT
tbl1.существительное AS существительное,
tbl2.прилагательное AS прилагательное
FROM
tbl1
JEFT JOIN
tbl2
ON tbl1.индекс = tbl2.id
|
| |
|
|
|
|
|
|
|
для: cheops
(12.12.2011 в 18:12)
| | Выдает ошибку #1054 :(, хотя названия колонок вроде правильно пишу | |
|
|
|
|
|
|
|
для: Elena_S
(12.12.2011 в 18:41)
| | А, нет, спасибо, все работает :) Просто Вы вместо LEFT JOIN написали JEFT JOIN, а я скопировала, как было, вот и не работало | |
|
|
|
|
|
|
|
для: Elena_S
(12.12.2011 в 18:47)
| | А еще такой вопрос, можно ли прописать в вопросе чувствительность к регистру или это какими-то другими средствами нужно делать? | |
|
|
|
|
|
|
|
для: Elena_S
(12.12.2011 в 18:53)
| | Да можно, но это обычно не в запросе делают (хотя можно и тут извернуться), а на уровне базы данных, таблицы или столбца. Когда вы задаете кодировку, вы также задаете сопоставление cp1251_general_ci или cp1251_general_cs. ci - не зависит от регистра, cs - зависит от регистра.
PS Под новые вопросы, лучше новые темы заводить. | |
|
|
|