Sla
|
|
« Ответ #150 : 07-12-2010 11:47 » |
|
select C_FIRST_NAME, C_SECOND_NAME, C_LAST_NAME, client.n_city,computation.n_debt From client, computation, city where client.n_client=computation.n_client and client.n_city=city.n_city -переделала
and client.n_city=city.n_city --переделала
and n_debt>0 - переделала and n_debt>0 -- переделала
and n_city=50 or n_city=55 and n_city=61
and n_city=50 or n_city=55 and n_city=61 --ПЕРЕДЕЛАТЬ
and to_char(d_computation,'MM')='10'
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
McZim
|
|
« Ответ #151 : 07-12-2010 11:55 » |
|
and n_city=50 or n_city=55 and n_city=61 //выбрать идент. 50 или 55 и 61
почему именно такое условие?
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #152 : 07-12-2010 12:00 » |
|
знала бы как переделать давно бы сделала. А проблема не в computation?
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Dana
|
|
« Ответ #153 : 07-12-2010 12:00 » |
|
and n_city=50 or n_city=55 and n_city=61 //выбрать идент. 50 или 55 и 61
почему именно такое условие? Потому что под этими идентификаторами находится город Троицк
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Sla
|
|
« Ответ #154 : 07-12-2010 12:00 » |
|
вернемся к логическим выражениям:
1 and 1 or 0 or 1 =1 1 and 0 or 0 or 1 = 1 1 and 0 and (1 or 0) = 0 1 and 1 and ( 1 or 0) = 1
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
McZim
|
|
« Ответ #155 : 07-12-2010 12:05 » |
|
Dana, я не про идентификаторы, а про: and .. or .. and
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #156 : 07-12-2010 12:08 » |
|
вернемся к логическим выражениям:
1 and 1 or 0 or 1 =1 1 and 0 or 0 or 1 = 1 1 and 0 and (1 or 0) = 0 1 and 1 and ( 1 or 0) = 1
все правильно )))
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Sla
|
|
« Ответ #157 : 07-12-2010 12:14 » |
|
если все правильно
то
1 and n_city=50 or n_city=55 and n_city=61
какой результат будет при n_city=50 n_city=55 n_city=61 ?
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #158 : 07-12-2010 21:02 » |
|
от формы записи условия отбора не меняются... твое AND n_debt>0 // долг больше нуля AND n_city=50 OR n_city=55 AND n_city=61 //выбрать идент. 50 или 55 и 61 AND to_char(d_computation,'MM')='10' // на начало какого периода выводить долг можно записать: AND n_debt>0 // долг больше нуля AND n_city=50 AND n_city=61 //выбрать идент. 50 или 55 и 61 AND to_char(d_computation,'MM')='10' // на начало какого периода выводить долг
OR n_city=55 // или вместо всего предыдущего просто это город большая подсказка: скобки
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
Dana
|
|
« Ответ #159 : 08-12-2010 03:21 » |
|
если все правильно
то
1 and n_city=50 or n_city=55 and n_city=61
какой результат будет при n_city=50 == n_city=55 n_city=55 == n_city=55 n_city=61 == n_city=61 ?
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Dana
|
|
« Ответ #160 : 08-12-2010 03:23 » |
|
от формы записи условия отбора не меняются... твое AND n_debt>0 // долг больше нуля AND n_city=50 OR n_city=55 AND n_city=61 //выбрать идент. 50 или 55 и 61 AND to_char(d_computation,'MM')='10' // на начало какого периода выводить долг можно записать: AND n_debt>0 // долг больше нуля AND n_city=50 AND n_city=61 //выбрать идент. 50 или 55 и 61 AND to_char(d_computation,'MM')='10' // на начало какого периода выводить долг
OR n_city=55 // или вместо всего предыдущего просто это город большая подсказка: скобки мне надо по всем этим 3 идентификаторам выбрать
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Sla
|
|
« Ответ #161 : 08-12-2010 07:35 » |
|
если все правильно
то
1 and n_city=50 or n_city=55 and n_city=61
какой результат будет при n_city=50 n_city=55 n_city=61 ?
n_city=50 true false false 1 and n_city=50 or n_city=55 and n_city=61 1 and true or false and false =1*1 + 0*0 = 1 n_city=55 true false false 1 and 55=50 or 55=55 and 55=61 1*0 + 0*0 = 0 Так как я ошибся а хотел записать следующее, но от этого ничего не меняется 1 and n_city=50 or n_city=55 or n_city=61 1 - это истинные условия предыдущих логических выражений Так вот, при n_city=55 or n_city=61 выберутся все поля со значением n_city 55 или 61 Следовательно, тф ЧТО-ТО делаешь неправильно.
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
McZim
|
|
« Ответ #162 : 08-12-2010 09:35 » |
|
Dana, Замучили тебя бедуню По поводу Челябинска, ты случаем не это пытаешься сделать? WITH test AS ( SELECT 'a' AS name, 50 AS id, 0 AS debt FROM dual UNION ALL SELECT 'b', 51, -10 FROM dual UNION ALL SELECT 'c', 50, 20 FROM dual UNION ALL SELECT 'd', 55, 30 FROM dual UNION ALL SELECT 'e', 50, -1 FROM dual UNION ALL SELECT 'f', 61, -3 FROM dual UNION ALL SELECT 'g', 52, 200 FROM dual UNION ALL SELECT 'h', 61, 0 FROM dual UNION ALL SELECT 'i', 51, 100 FROM dual ) SELECT * FROM test t WHERE t.debt <= 0 AND ( t.id = 50 OR t.id = 55 OR t.id = 61 ) a 50 0 e 50 -1 f 61 -3 h 61 0
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #163 : 08-12-2010 10:24 » |
|
UNION мы еще не проходили
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Dana
|
|
« Ответ #164 : 08-12-2010 10:26 » |
|
если все правильно
то
1 and n_city=50 or n_city=55 and n_city=61
какой результат будет при n_city=50 n_city=55 n_city=61 ?
n_city=50 true false false 1 and n_city=50 or n_city=55 and n_city=61 1 and true or false and false =1*1 + 0*0 = 1 n_city=55 true false false 1 and 55=50 or 55=55 and 55=61 1*0 + 0*0 = 0 Так как я ошибся а хотел записать следующее, но от этого ничего не меняется 1 and n_city=50 or n_city=55 or n_city=61 1 - это истинные условия предыдущих логических выражений Так вот, при n_city=55 or n_city=61 выберутся все поля со значением n_city 55 или 61 Следовательно, тф ЧТО-ТО делаешь неправильно. да если бы выводились поля 55 или 61 было бы уже хорошо, а то у меня и 55 и 61 и 48 и другие всякие выводятся ((
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #165 : 08-12-2010 10:35 » |
|
UNION мы еще не проходили
Это я сделал только для того что бы не создавать у себя в схеме таблицу. Представь что есть таблица test, с вот таким заполнением: a 50 0 b 51 -10 c 50 20 d 55 30 e 50 -1 f 61 -3 g 52 200 h 61 0 i 51 100
тогда запрос будет выглядеть так: SELECT * FROM test t WHERE t.debt <= 0 AND ( t.id = 50 OR t.id = 55 OR t.id = 61 ) Я и спрашиваю, ты это пытаешься сделать?
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #166 : 08-12-2010 10:45 » |
|
UNION мы еще не проходили
Это я сделал только для того что бы не создавать у себя в схеме таблицу. Представь что есть таблица test, с вот таким заполнением: a 50 0 b 51 -10 c 50 20 d 55 30 e 50 -1 f 61 -3 g 52 200 h 61 0 i 51 100
тогда запрос будет выглядеть так: SELECT * FROM test t WHERE t.debt <= 0 AND ( t.id = 50 OR t.id = 55 OR t.id = 61 ) Я и спрашиваю, ты это пытаешься сделать? ну что-то очень похожее. Просто я попробовала как у тебя сделать оракл не пропустил Главное только внизу пишет "Ошибка на странице"
|
|
« Последнее редактирование: 08-12-2010 10:48 от Dana »
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #167 : 08-12-2010 10:51 » |
|
Dana, мне зайти к тебе и показать?
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #168 : 08-12-2010 10:54 » |
|
Попробуй
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #169 : 08-12-2010 11:09 » |
|
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #170 : 08-12-2010 11:24 » |
|
это не моя база а учебная. А что все-таки в запросе не правильно? select * From client, computation, city where client.n_client=computation.n_client and n_debt>0 and {city.n_city=50 or city.n_city=55 or city.n_city=61} and to_char(d_computation,'MM')='10'
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #171 : 08-12-2010 11:26 » |
|
Dana,
1. Ты сейчас взяла мой запрос (коряво его видо изменила, допустила ошибки) и спрашиваешь что у меня не правильно? 2. Значит проблема с учебной, вы больше с ней не сможете работать, пока не почистите!
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #172 : 08-12-2010 11:33 » |
|
Ладно. Всем спасибо за участие и помощь Добавлено через 1 день, 21 час, 39 минут и 21 секунду:Сумасшедшие продолжается Посчитать сумму долга клиента Александра Иванова за январь, февраль, март и апрель 2008 года. Вырисовывается такая картинка: select c_first_name, C_LAST_NAME From client,computation where client.n_client=computation.n_client and c_first_name in (select c_first_name from client where upper (c_first_name) like upper ('александр')) and c_last_name in (select c_last_name from client where upper (c_last_name) like upper ('иванов')) and n_debt = (select sum(n_debt) from computation) and d_computation in ((d_computation,'MM')='03','01','02','03','04')
|
|
« Последнее редактирование: 10-12-2010 09:12 от Dana »
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #173 : 10-12-2010 09:36 » |
|
Dana, зачем тебе тут вложенные подзапросы? Почему ты не выводишь сумму долга?
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #174 : 10-12-2010 09:41 » |
|
Dana, зачем тебе тут вложенные подзапросы? Почему ты не выводишь сумму долга?
а это не вывод ссумы долга n_debt = (select sum(n_debt) from computation) а подзопросы для нахождения Александра Иванова
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #175 : 10-12-2010 09:47 » |
|
Посчитать сумму долга клиента Александра Иванова за январь, февраль, март и апрель 2008 года.
То есть считается что ее выводить не нужно? А какой смысл в подсчете тогда, если не видеть результат!?
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #176 : 10-12-2010 10:05 » |
|
Посчитать сумму долга клиента Александра Иванова за январь, февраль, март и апрель 2008 года.
То есть считается что ее выводить не нужно? А какой смысл в подсчете тогда, если не видеть результат!? почему сумму долга и надо увидеть но только по Александру Иванову за январь, февраль март и апрель Добавлено через 55 секунд:Просто вывести select sum(n_debt) from computation
|
|
« Последнее редактирование: 10-12-2010 10:06 от Dana »
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
McZim
|
|
« Ответ #177 : 10-12-2010 10:09 » |
|
почему сумму долга и надо увидеть но только по Александру Иванову за январь, февраль март и апрель
Ну так я тебе хочу сказать, что ты ее не выводишь! Где вот тут сумма долга? SELECT c_first_name, C_LAST_NAME
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Dana
|
|
« Ответ #178 : 10-12-2010 10:43 » |
|
А так нельзя или не правильно
select c_first_name, C_LAST_NAME, n_debt From client,computation where client.n_client=computation.n_client n_debt = (select sum(n_debt) from computation)
|
|
|
Записан
|
Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
|
|
|
Oldy
|
|
« Ответ #179 : 10-12-2010 10:57 » |
|
...
|
|
|
Записан
|
С уважением, Oldy.
|
|
|
|