|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Я делаю большой запрос. например. SELECT x1.ID,( Большой запрос 1),(Большой запрос 2),(( Большой запрос 1)-(Большой запрос 2)) from tabl1 Можноли как ни будь сделать то бы не повпорять большие запросы. ? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2003, 06:43 |
|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Valerik, покажи настоящий запрос. Я вообще не понял что у тебя означает Большой запрос 2 - это вложенный запрос, или набор функций??? mahoune ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2003, 11:09 |
|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Ну сам попросил... SELECT x1.ID,IFNULL( IF(x1.stat='p' and x1.deltastatus=2,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and p.deltastatus=1 and x.rgt=x1.rgt-1 group by x.id) ,IF(x1.stat='p' and x1.deltastatus=1,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and x.rgt=x1.rgt-1 group by x.id),0)),0 )+ x1.Unrgt as RGTS ,IFNULL( IF(x1.stat='p' and x1.deltastatus=2,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and p.deltastatus=1 and x.lft=x1.lft+1 and x.rgt<>x1.rgt-1 group by x.id) ,IF(x1.stat='p' and x1.deltastatus=1,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and x.lft=x1.lft+1 and x.rgt<>x1.rgt-1 group by x.id),0)),0 )+ x1.Unlft FROM personnel as x1 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2003, 19:29 |
|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Ну сам попросил... SELECT x1.ID,IFNULL( IF(x1.stat='p' and x1.deltastatus=2,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and p.deltastatus=1 and x.rgt=x1.rgt-1 group by x.id) ,IF(x1.stat='p' and x1.deltastatus=1,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and x.rgt=x1.rgt-1 group by x.id),0)),0 )+ x1.Unrgt as RGTS ,IFNULL( IF(x1.stat='p' and x1.deltastatus=2,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and p.deltastatus=1 and x.lft=x1.lft+1 and x.rgt<>x1.rgt-1 group by x.id) ,IF(x1.stat='p' and x1.deltastatus=1,(select (count(p.ID)) from personnel x, personnel p where p.lft between x.lft and x.rgt and p.stat='p' and x.lft=x1.lft+1 and x.rgt<>x1.rgt-1 group by x.id),0)),0 )+ x1.Unlft FROM personnel as x1 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2003, 19:30 |
|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Красивый скрипт Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67.
Пожалуйста, донеси до меня смысл всего этого? mahoune ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2003, 12:03 |
|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Да смысыл не ажен вы попросили меня дать вам большой запрос я вам дал..:) А ответа на свой вопрос так и не получил :( __________ Можноли как ни будь сделать то бы не повпорять большие запросы. ? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2003, 18:34 |
|
Возможно ли избежать повторения в запросах?
|
|||
---|---|---|---|
#18+
Конечно. Пользоваться временными таблицами . Они вполне быстро работают. Они валидны только для текущего подключения. Они позоляют решить массу задач. Но есть 2 ограничения . ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2003, 18:44 |
|
|
start [/forum/topic.php?fid=47&fpage=706&tid=1855984]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 276ms |
total: | 393ms |
0 / 0 |