本帖最后由 luallen 于 2012-04-28 10:35:32 编辑

解决方案 »

  1.   

    "金额266716.56 客户id是3,
    然后从开票表里面找客户id是3,开票日期在回款日期2010-11-26之前的开票"你看记录中
    "金额108000 客户id是10,
    然后从开票表里面找客户id是10,开票日期在回款日期2012-1-3之前的开票"
    数据中
    客户id是10开票日期全在2012-1-3之前你的开票和汇款很难对一起
      

  2.   

    rowid invoice_date invoice_no moneya BranchClient_id
    3636 2010-3-16 无 512 3
    3637 2010-3-16 无 36096 3
    3638 2010-7-30 无 16380 3
    3639 2010-7-30 无 9248 3
    3640 2010-7-30 无 62832 3
    3641 2011-12-1 1392913 22320 4
    3642 2010-6-7 无 2856 7
    3643 2010-6-7 无 19992 7
    3644 2011-3-12 无 4998 7
    3645 2011-3-23 无 2856 7
    3646 2010-12-20 无 24750 8
    3647 2010-12-20 无 150000 8
    3648 2011-4-21 无 3570 10
    3649 2011-4-21 无 3060 10
    3650 2011-4-21 无 18360 10
    3651 2011-4-21 无 35640 10
    3652 2011-4-21 无 272160 10
    3653 2011-4-21 无 82620 10
    3654 2011-4-21 无 58320 10
    3655 2011-4-21 无 19440 10
    3656 2011-4-21 无 11220 10
    3657 2011-4-21 无 3060 10
    3658 2011-4-21 无 10200 10
    3659 2011-4-21 无 194400 10
    3660 2011-4-21 无 74520 10
    3661 2011-4-21 无 197640 10
    3662 2011-4-21 无 12750 10
    3663 2011-4-21 无 1530 10
    3664 2011-4-21 无 243000 10
    3665 2011-4-21 无 45360 10
    3666 2011-4-21 无 178200 10
    3667 2011-4-21 无 10200 10
    3668 2011-11-11 1392840 21600 10
    3669 2011-11-11 1392840 205200 10
    3670 2011-11-11 1392840 205200 10
    3671 2011-11-11 1392839 10800 10
    3672 2011-11-11 1392839 10800 10
    3673 2011-11-11 1392839 99180 10
    3674 2011-11-11 1392839 311220 10
    3675 2011-11-11 1392841 10800 10
    3676 2011-11-11 1392841 205200 10
    3677 2010-12-24 无 126480 12
    3678 2010-12-24 无 210800 12
    3679 2010-12-24 无 182718.9 12
    3680 2010-9-6 无 123552 13
    3681 2010-9-6 无 0 13
    3682 2010-11-24 无 23400 13
    3683 2010-11-24 无 0 13
    3684 2011-3-23 无 82680 13
    3685 2011-3-23 无 0 13
    3686 2011-5-21 62600 0 13
    3687 2011-5-21 62600 18360 13
    3688 2011-5-21 62600 176280 13
    3689 2011-5-21 62599 0 13
    3690 2011-5-21 62599 20400 13
    3691 2011-5-21 62599 218400 13
    3692 2011-5-21 62601 0 13
    3693 2011-5-21 62601 46410 13
    3694 2011-5-21 62601 173940 13
    3695 2011-5-21 62601 229320 13
    3696 2011-8-5 1265930 0 13
    3697 2011-8-5 1265930 20400 13
    3698 2011-8-5 1265930 156000 13
    3699 2011-8-5 1265930 240240 13
    3700 2011-8-5 1265930 0 13
    3701 2011-8-5 1265930 39780 13
    3702 2011-8-5 1265930 123240 13
    3703 2011-3-5 无 1740 14
    3704 2011-4-7 无 0 14
    3705 2011-4-7 无 169650 14
    3706 2011-4-7 无 25080 14
    3707 2011-7-5 839763 15660 14
    3708 2011-7-5 839763 1740 14
    3709 2011-8-1 839994 27840 14
    3710 2011-1-17 无 1608 19
    3711 2011-1-17 无 4080 19
    3712 2011-1-17 无 21840 19
    3713 2011-1-17 无 6240 19
    3714 2011-1-17 无 10920 19
    3715 2011-1-17 无 46800 19
    3716 2011-1-17 无 52260 19
    3717 2011-1-17 无 23400 19
    3718 2011-1-17 无 480 19
    3719 2011-1-17 无 39000 19
    3720 2011-1-17 无 2099.99988 19
    3721 2011-1-17 无 24180 19
    3722 2011-4-25 无 402 19
    3723 2011-4-25 无 4500 19
    3724 2011-4-25 无 5628 19
    3725 2011-4-25 无 360 19
    3726 2011-4-25 无 2250 19
    3727 2011-4-25 无 3618 19
    3728 2011-4-25 无 24120 19
    3729 2011-4-25 无 20250 19
    3730 2011-4-25 无 180000 19
    3731 2011-4-25 无 3618 19
    3732 2011-4-25 无 1350 19
    3733 2011-4-25 无 8844 19
    3734 2011-4-25 无 90750 19
    3735 2011-4-25 无 0 19
    3736 2011-4-25 无 8640 19
    3737 2011-4-25 无 234750 19
    3738 2011-5-20 167777 3840 19
    3739 2011-5-20 167777 25500 19
    3740 2011-5-20 167777 8442 19
    3741 2011-5-20 167777 63000 19
    3742 2011-5-20 167777 450 19
    3743 2011-5-20 167777 37500 19
    3744 2011-6-24 839729 13680 19
    3745 2011-6-24 839729 17100 19
    3746 2011-8-23 841440 96078 19
    3747 2011-8-23 841440 28800 19
    3748 2011-9-22 739461 2709 19
    3749 2011-9-22 739461 34884 19
    3750 2011-9-22 739461 73134 19
    3751 2011-9-22 739461 38718 19
    3752 2011-10-31 741871 1200 19
    3753 2011-10-31 741871 1400 19
    3754 2010-6-9 无 499380 20
    3755 2011-7-27 839990 0 20
    3756 2011-7-27 839990 25500.15 20
    3757 2011-7-27 839990 223077.7692 20
    3758 2011-7-27 839990 0 20
    3759 2011-7-27 839990 0 20
    3760 2011-7-27 839990 13260.078 20
    3761 2011-7-27 839990 93599.064 20
    3762 2011-7-27 839990 6630.039 20
    3763 2011-7-27 839990 60059.3994 20
    3764 2011-7-27 839990 234777.6522 20
    3765 2011-7-27 839990 0 20
    3766 2011-7-27 839990 44370.261 20
    3767 2011-7-27 839990 173158.2684 20
    3768 2011-7-27 839990 7140.042 20
    3769 2011-7-27 839990 99839.0016 20
    3770 2011-7-27 839992 0 20
    3771 2011-7-27 839992 9690.057 20
    3772 2011-7-27 839992 229317.7068 20
    3773 2011-7-27 839992 0 20
    3774 2011-7-27 839992 29070.171 20
    3775 2011-7-27 839992 223857.7614 20
    3776 2011-7-27 839992 0 20
    3777 2011-7-27 839992 29070.171 20
    3778 2011-7-27 839992 223857.7614 20
    3779 2011-7-27 839992 0 20
    3780 2011-7-27 839992 8670.051 20
    3781 2011-7-27 839992 67079.3292 20
    3782 2011-9-2 737346 25080 20
    3783 2011-9-2 737346 226200 20
    3784 2011-9-23 739474 8567.4186 20
    3785 2011-9-23 739475 115254.9918 20
    3786 2011-9-23 739475 154187.28 20
    3787 2011-9-23 739475 2698.2774 20
    3788 2011-9-23 739475 385.4682 20
    3789 2011-9-23 739475 144936.0432 20
    3790 2011-9-23 739475 154187.28 20
    3791 2011-9-23 739475 186181.1406 20
    3792 2011-9-23 739475 144936.0432 20
    3793 2011-9-23 739475 154187.28 20
    3794 2011-9-23 739475 124120.7604 20
    3795 2011-9-23 739475 96367.05 20
    3796 2011-9-23 739475 1349.1387 20
    3797 2011-9-23 739475 125277.165 20
    3798 2011-9-23 739475 68998.8078 20
    3799 2011-9-23 739475 25055.433 20
    3800 2011-9-23 739475 80948.322 20
    3801 2011-9-23 739475 1156.4046 20
    3802 2011-1-17 无 66048 21
    3803 2011-1-17 无 118272 21
    3804 2011-1-17 无 55296 21
    3805 2011-1-17 无 36864 21
    3806 2011-1-17 无 78336 21
    3807 2011-1-17 无 145184 21
    3808 2011-1-17 无 0 21
    3809 2011-1-17 无 0 21
    3810 2011-1-17 无 0 21
    3811 2011-1-17 无 0 21
    3812 2011-1-17 无 0 21
    3813 2012-1-9 1395657 8568 21
    3814 2012-1-9 1395657 4032 21
    3815 2012-1-9 1395657 6048 21
    3816 2012-1-9 1395657 13104 21
    3817 2012-1-9 1395657 9072 21
    3818 2012-1-9 1395657 24192 21
    3819 2012-1-9 1395657 12096 21
    3820 2012-1-9 1395657 116736 21
    3821 2012-1-9 1395657 221184 21
    3822 2012-1-9 1395657 24192 21
    3823 2012-1-9 1395657 76000 21
    3824 2012-1-9 1395657 0 21
    3825 2012-1-9 1395657 0 21
    3826 2010-10-12 无 9576 22
    3827 2010-10-12 无 43008 22
    3828 2010-10-12 无 0 22
    3829 2011-2-24 无 87552 22
    3830 2011-2-24 无 0 22
    3831 2011-7-1 839749 0 22
    3832 2011-7-1 839749 20640 22
    3833 2011-7-1 839749 127680 22
    3834 2011-7-1 839749 105600 22
    3835 2011-7-1 839749 0 22
    3836 2011-7-1 839749 11352 22
    3837 2011-7-1 839749 70224 22
    3838 2011-7-1 839749 58080 22
    3839 2011-7-1 839749 0 22
      

  3.   

    rowid payment_date payment_money BranchClient_id
    1629 2010-11-26 266716.56 3
    1630 2011-7-20 408816 3
    1631 2011-12-1 22320 4
    1632 2011-12-13 30702 7
    1633 2011-5-13 1475250 10
    1634 2011-12-15 972000 10
    1635 2012-1-13 108000 10
    1636 2010-4-28 256400.13 12
    1637 2011-1-21 263598.77 12
    1638 2010-8-5 111196.8 13
    1639 2010-12-16 23400 13
    1640 2011-4-12 74412 13
    1641 2011-6-29 404703 13
    1642 2011-6-29 214920 13
    1643 2011-9-5 175176 13
    1644 2011-9-9 12355.2 13
    1645 2011-9-21 521694 13
    1646 2011-3-4 1740 14
    1647 2011-4-18 194730 14
    1648 2011-6-28 15660 14
    1649 2011-7-5 1740 14
    1650 2011-7-28 27840 14
    1651 2011-10-21 8700 14
    1652 2011-11-15 4350 14
    1653 2011-1-26 279708 19
    1654 2011-3-30 35880 19
    1655 2011-5-10 589080 19
    1656 2011-6-4 191732 19
    1657 2011-7-7 61002 19
    1658 2011-9-6 124878 19
    1659 2011-10-9 16746 19
    1660 2011-10-19 149445 19
    1661 2011-12-12 2600 19
    1662 2011-3-25 82495.2 20
    1663 2011-4-19 186830.85 20
    1664 2011-5-25 31635.74 20
    1665 2011-6-25 35276.4 20
    1666 2011-8-25 8790.31 20
    1667 2011-9-21 39446.5 20
    1668 2011-10-15 1353771.1 20
    1669 2011-11-18 3240412.73 20
    1670 2011-12-6 188459.36 20
    1671 2011-3-3 500000 21
    1672 2012-1-13 515224 21
    1673 2011-1-19 52584 22
    1674 2011-5-19 87552 22
    1675 2011-9-16 1369770 22
    1676 2011-12-28 107868 22
    1677 2011-12-28 47538 22
    1678 2012-1-18 231132 22
    1679 2012-1-19 1546098 22
    1680 2011-4-1 104280 30
    1681 2011-1-29 50000 31
    1682 2011-8-2 9504 32
    1683 2011-9-5 87492 32
    1684 2010-6-28 200000 34
    1685 2010-8-17 100000 34
    1686 2011-1-14 319620 34
    1687 2011-5-10 214000 34
    1688 2011-9-2 400000 34
    1689 2011-12-20 240000 34
    1690 2012-1-12 158780 34
    1691 2011-2-23 92120 36
    1692 2011-3-21 16800 36
    1693 2011-4-2 16800 36
    1694 2011-4-15 11200 36
    1695 2011-6-14 11200 36
    1696 2011-8-10 11000 36
    1697 2011-8-12 15680 36
    1698 2011-9-14 16800 36
    1699 2011-9-15 200 36
    1700 2011-9-26 11200 36
    1701 2011-9-28 44800 36
    1702 2011-10-27 16800 36
    1703 2011-11-1 50400 36
    1704 2011-11-11 11200 36
    1705 2011-5-30 71820 37
    1706 2011-6-27 54000 37
    1707 2011-7-27 27000 37
    1708 2011-11-18 16740 37
    1709 2011-1-24 59400 38
    1710 2011-6-15 950334 41
    1711 2011-7-27 199920 41
    1712 2011-8-24 2087736 41
    1713 2011-10-8 421260 41
    1714 2011-11-30 46410 41
    1715 2011-3-30 71820 43
    1716 2011-5-20 71820 43
    1717 2011-6-27 153588 43
    1718 2011-7-18 153900 43
    1719 2011-10-8 217170 43
    1720 2011-10-19 148770 43
    1721 2011-11-7 143640 43
    1722 2011-12-13 72180 43
    1723 2010-12-20 19200 45
    1724 2011-12-27 14160 45
    1725 2011-1-27 4608 46
    1726 2010-12-11 14301.6 47
    1727 2010-12-17 8726.4 47
    1728 2010-12-21 54055.2 47
    1729 2010-12-22 8241.6 47
    1730 2010-12-23 8847.6 47
    1731 2010-12-29 67872 47
    1732 2010-12-29 38784 47
    1733 2011-7-20 147621.6 47
    1734 2011-8-18 1586463.2 47
    1735 2011-9-21 95504.7 47
    1736 2011-11-1 6297028.42 47
    1737 2011-12-21 68801 47
    1738 2011-1-6 1009 48
    1739 2011-8-29 68400 48
    1740 2011-9-2 119700 48
    1741 2011-11-7 2160 48
    1742 2011-11-18 158400 48
    1743 2011-12-5 2100 48
    1744 2011-12-7 32400 48
    1745 2011-12-19 21420 48
    1746 2012-1-5 8600 48
    1747 2012-1-10 13500 48
    1748 2011-4-13 21060 50
    1749 2011-8-18 30270 50
    1750 2011-6-22 25380 51
    1751 2011-7-25 33840 53
    1752 2011-9-13 28980 53
    1753 2012-1-17 34820 53
    1754 2011-1-20 18480 54
    1755 2011-1-28 189000 54
    1756 2011-3-8 52290 54
    1757 2011-4-12 294210 54
    1758 2011-5-3 32700 54
    1759 2011-5-19 46620 54
    1760 2011-5-23 61110 54
    1761 2011-6-30 44310 54
    1762 2011-8-29 34650 54
    1763 2011-10-25 36060 54
    1764 2011-1-19 92460 56
    1765 2011-3-4 186300 56
    1766 2011-4-8 109020 56
    1767 2011-5-17 190440 56
    1768 2011-6-3 91580 56
    1769 2011-10-24 79290 56
    1770 2011-12-14 393300 56
    1771 2012-1-11 160080 56
    1772 2011-1-10 2668.2 58
    1773 2011-3-11 5175.9 58
    1774 2011-5-12 8589.36 58
    1775 2011-10-27 10672.8 58
    1776 2011-3-11 3674.1 60
    1777 2011-6-16 5051.52 60
    1778 2011-8-8 36203.82 60
    1779 2011-10-25 43087.32 60
    1780 2011-2-23 7776 61
    1781 2011-8-10 6900 61
    1782 2011-7-20 250000 62
    1783 2011-10-26 94436 67
    1784 2011-12-20 149644.8 67
    1785 2011-6-24 11794.87 69
    1786 2011-7-8 80000 69
    1787 2011-8-23 8000 69
    1788 2011-9-8 2005.13 69
    1789 2011-11-29 2840 69
    1790 2012-1-12 3120 69
    1791 2010-12-8 17307 70
    1792 2011-6-27 2761.2 70
    1793 2011-6-27 5817.6 70
    1794 2011-6-27 10062 70
    1795 2011-6-27 2671.2 70
    1796 2011-8-29 343143.86 70
    1797 2011-8-31 176857.46 70
    1798 2011-9-6 10665.6 70
    1799 2011-12-12 10544.4 70
    1800 2011-12-12 15756 70
    1801 2011-12-12 11514 70
    1802 2010-12-17 7272 72
    1803 2011-6-7 14788.8 73
    1804 2011-11-1 218299.8 73
    1805 2011-11-26 184951.2 73
    1806 2011-12-14 47779.2 73
    1807 2011-12-27 42899.2 73
    1808 2010-12-21 54400 75
    1809 2010-9-13 200000 78
    1810 2010-11-24 210660 78
    1811 2010-12-21 60000 78
    1812 2011-1-31 80000 78
    1813 2011-8-23 57410 78
    1814 2011-8-31 30000 78
    1815 2011-12-8 20000 78
    1816 2011-12-19 30000 78
    1817 2010-12-29 10920 81
    1818 2011-6-29 15600 81
    1819 2011-11-26 42508.8 81
    1820 2011-12-21 11040 83
    1821 2011-11-28 16800 87
    1822 2010-11-10 130000 89
    1823 2011-1-24 50000 89
    1824 2011-7-25 25500 91
    1825 2010-1-22 23782 92
    1826 2010-12-10 376944 92
    1827 2011-1-26 1000000 92
    1828 2011-3-17 883068 92
    1829 2011-3-23 37260 92
    1830 2011-5-18 234600 92
    1831 2011-5-27 122750 92
    1832 2011-8-30 79392 92
    1833 2011-9-21 10098 92
    1834 2011-12-30 357420 92
    1835 2011-1-18 152460 93
    1836 2011-3-1 143640 93
    1837 2011-3-1 287280 93
    1838 2011-3-14 89376 93
    1839 2010-12-24 2597750 94
    1840 2011-1-25 2572600 94
    1841 2011-1-29 3000000 94
    1842 2011-4-27 300000 94
    1843 2011-5-3 1861050 94
    1844 2011-6-10 2000000 94
    1845 2011-6-19 3000000 94
    1846 2011-8-18 1100000 94
    1847 2011-9-2 1000000 94
    1848 2011-9-2 1405500 94
    1849 2011-11-12 999900 94
    1850 2011-11-19 2000000 94
    1851 2011-12-16 2447250 94
    1852 2011-12-19 1600000 94
    1853 2010-10-30 20960 95
    1854 2011-1-1 22688 95
    1855 2011-1-1 377312 95
    1856 2011-5-27 100000 95
    1857 2011-11-29 250000 95
    1858 2010-12-16 885780 96
    1859 2010-12-24 335664 96
    1860 2011-5-10 245088 96
    1861 2010-9-27 1190000 97
    1862 2011-5-31 228000 97
    1863 2011-5-1 142560 98
    1864 2011-9-26 70224 99
    1865 2011-7-21 41580 100
    1866 2010-12-28 20000 101
    1867 2011-1-28 16600 101
    1868 2011-6-17 109800 101
    1869 2011-7-20 14640 101
    1870 2011-1-19 65280 105
    1871 2011-5-25 140352 105
    1872 2011-7-26 79080 105
    1873 2012-1-10 56940 105
    1874 2010-10-22 157544 107
    1875 2010-12-20 263718 107
    1876 2011-8-10 473940 107
    1877 2011-11-30 810648 108
    1878 2011-11-30 979776 108
    1879 2010-12-23 122640 112
    1880 2011-2-1 63238 112
    1881 2011-9-15 200000 112
    1882 2012-1-21 274860 112
    1883 2011-3-4 23400 114
    1884 2011-2-28 91080 116
      

  4.   


    create table djjx
    (
    djbh varchar(20), --单据编号 key
    spid varchar(20), --商品ID
    shl int --数量
    )
    --其中二行数据:
    insert into djjx values('dj0001','sp0001',300)
    insert into djjx values('dj0001','sp0002',100)
    --表二:
    create table sphwph  
    (
    spid varchar(20), --商品ID key
    hw varchar(20), --货位 key
    ph varchar(20), --批号 key
    shl int --数量
    )
    其中几行数据:
    insert into sphwph values('sp0001','hw0001','ph001',50)
    insert into sphwph values('sp0001','hw0001','ph002',40)
    insert into sphwph values('sp0001','hw0002','ph002',90)
    insert into sphwph values('sp0001','hw0003','ph003',500)
    insert into sphwph values('sp0001','hw0004','ph005',1000)
    insert into sphwph values('sp0002','hw0001','ph006',90)
    insert into sphwph values('sp0002','hw0002','ph009',100)
    /*
    求得到如下结果或一张临时表:
    djbh spid hw ph shl
    dj0001 sp0001 hw001 ph001 50
    dj0001 sp0001 hw001 ph002 40
    dj0001 sp0001 hw002 ph002 90
    dj0001 sp0001 hw003 ph003 120
    dj0001 sp0002 hw001 ph006 90
    dj0001 sp0002 hw002 ph009 10   
    */
    ;with t
    as(
    select id=row_number()over(partition by a.spid order by getdate()),
    a.djbh,a.spid,a.shl as total,b.hw,b.ph,b.shl 
    from djjx a inner join sphwph b on a.spid=b.spid
    ),
    m as(
    select id,djbh,spid,(total-shl) as total,hw,ph,shl from t where id=1
    union all
    select a.id,a.djbh,a.spid,b.total-a.shl,a.hw,a.ph,a.shl from t a
    inner join m b on a.id=b.id+1 and a.spid=b.spid
    )
    select djbh,spid,hw,ph,
    case when total<0 then shl-ABS(total) else shl end as shl 
    from m where case when total<0 then shl-ABS(total) else shl end>0 order by spid,id
    /*
    djbh spid hw ph shl
    dj0001 sp0001 hw0001 ph001 50
    dj0001 sp0001 hw0001 ph002 40
    dj0001 sp0001 hw0002 ph002 90
    dj0001 sp0001 hw0003 ph003 120
    dj0001 sp0002 hw0001 ph006 90
    dj0001 sp0002 hw0002 ph009 10
    */有点像先进先出的东东。实在不想写,测试数据整的我机器都卡了
      

  5.   

    首先要区分客户Id将两张表按客户Id进行汇总然后比较如果金额相同,那么就算对账成功。然后将金额不相同的客户ID分出来。
    然后用游标进行处理。
    当a表金额在b表能够select 找到相同的写此条对账成功标志。
    当金额在,b表中找不到,就将此记录写入一个临时表a。记录金额和时间。
    然后继续对账。循环完成后,
    将b表中没有对账标志的记录写入临时表b 记录金额和时间。这时候得到一个没有对账匹配的临时表a,和临时表b
    然后按日期汇总之后再对账一次(这主要是处理一天有多条,但总金额相等的情况。)最后剩下实在不能对账的就列出来让客户手工对账。
      

  6.   

    我只插入拉id为3,4的数据,你看下是不是你想要的
    id          t1_max_rowid date                    s           t2_rowid    balance
    ----------- ------------ ----------------------- ----------- ----------- ----------------------
    3           3640         2010-03-30 00:00:00.000 125068      1629        141648.56
    3           3640         2010-03-30 00:00:00.000 125068      1630        550464.56
    4           3641         2011-12-01 00:00:00.000 22320       1631        0
      

  7.   

    楼主,我怎么木有看到invoice num?