目次
ディスカッションへの返信 (解決策)
ホームページ バックエンド開発 PHPチュートリアル 出荷要求情報に従って受信バッチ情報を照合します。

出荷要求情報に従って受信バッチ情報を照合します。

Jun 23, 2016 pm 02:18 PM

この投稿は、lazygc520 によって最終編集されました: 2013-08-07 09:39:09

データベースは 3 つのテーブルに分割されており、kw、vp、st で始まる 3 つのテーブルはストレージを表し、テーブルはst で始まるはアウトバウンド要件を表します。倉庫保管時には、最初の 2 つのテーブルが共同で照会され、倉庫に保管されている cust_no と Lotno が取得されます。在庫番号と、対応する cust_no および在庫番号は、ソート関係によって決まります。テーブル st のフィールド c1_time、c_type、および adress、在庫番号が順番に配置され、ロット番号が先入れ先出しソート規則に従って在庫番号の対応する数量と照合されます。それが等しい場合、一致したロット番号は次のようになります。除外され、数量が要件を満たすまで、新しいロット番号が次の在庫番号と照合されます。以下同様です。数量の結果は、st テーブルの mount*snp の結果です。これは、受信テーブルからの情報を走査することで実現できますか?

添付ファイルのアドレスをアップロードします: http://download.csdn.net/detail/lazygc520/5882535

受信データと送信要件がわかっており、受信バッチ データは送信要件に従って照合されます。
例: ch_result ページ、ch_result.php?stockno=SU13061301010 で、出荷バッチ列のデータを確認します。

kw テーブルと vp テーブルの結合クエリによって取得された cust_no と Lotno の結果:
$sql = "select CONCAT(SUBSTRING_INDEX(a.cust_no,' ',1),SUBSTRING_INDEX(a.cust_no,' ',-1)) as cust_no,b.lotno as lotno,count(b.lotno) as lotno_count from `kw_manage` as a,`vp_barcode_2d_y` as b where a.packageno = b.packageno group by lotno order by lotno asc";$result = mysql_query($sql);$ars =array();while($row = mysql_fetch_array($result,MYSQL_ASSOC)){	$ars[] = $row;}var_dump($ars);得到的结果:array(1) { [0]=> array(3) { ["cust_no"]=> string(10) "237033AW0A" ["lotno"]=> string(4) "3207" ["lotno_count"]=> string(3) "480" } }
ログイン後にコピー





ディスカッションへの返信 (解決策)

問題を単純化できない場合 (問題の核心を抽出する)
誰もそれを見る時間がないと思います

問題を単純化できない場合 (問題の核心を抽出し、コアデータのみを保持します)
誰も見る時間がないと思います
私はそれを整理しました:

//按照先入先出得到已入库的零件号码及产品批次$sql = "SELECT a.cust_no, a.lotno, count( a.lotno ) FROM vp_barcode_2d_y AS a RIGHT JOIN kw_manage AS b ON a.packageno = b.packageno GROUP BY a.lotno ORDER BY a.lotno, a.cust_no ASC";$result = mysql_query($sql);while($v1 = mysql_fetch_array($result,MYSQL_ASSOC)){	var_dump($v1);}/*array(3) {  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count( a.lotno )"]=>  string(3) "480"}array(3) {  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count( a.lotno )"]=>  string(3) "180"}*///按照先纳时,再到运地,再车型的顺序求得出库依赖的结果:$sql2 = "SELECT stock_no, cust_no, mount * snp AS total FROM `stock_detail` ORDER BY arr_time, adress, c_type ASC";$result2 = mysql_query($sql2);while($v2 = mysql_fetch_array($result2,MYSQL_ASSOC)){	var_dump($v2);}/*array(3) {  ["stock_no"]=  string(13) "SU13061301011"  ["cust_no"]=  string(10) "237033AW0A"  ["total"]=  string(3) "195"}array(3) {  ["stock_no"]=  string(13) "SU13061301011"  ["cust_no"]=  string(10) "237033AW0A"  ["total"]=  string(3) "195"}array(3) {  ["stock_no"]=  string(13) "SU13061301016"  ["cust_no"]=  string(10) "23703JX30A"  ["total"]=  string(2) "15"}array(3) {  ["stock_no"]=  string(13) "SU13061301016"  ["cust_no"]=  string(10) "23703JX30A"  ["total"]=  string(2) "30"}array(3) {  ["stock_no"]=  string(13) "SU13061301016"  ["cust_no"]=  string(10) "23703EX80A"  ["total"]=  string(3) "105"}array(3) {  ["stock_no"]=  string(13) "SU13061301016"  ["cust_no"]=  string(10) "23703EX80A"  ["total"]=  string(3) "120"}array(3) {  ["stock_no"]=  string(13) "SU13061301033"  ["cust_no"]=  string(10) "237033AW0A"  ["total"]=  string(3) "210"}array(3) {  ["stock_no"]=  string(13) "SU13061301032"  ["cust_no"]=  string(10) "237033AW0A"  ["total"]=  string(3) "255"}*/
ログイン後にコピー

先入れ先出しルールに従って、発信要件に対応する受信情報の結果を求めます。 注: フィールドの合計は、既知の対応するロット番号の数です。

これは今でも同じではありませんか?
あなたが提供した 2 つのデータについて、あなた以外の誰が誰が誰であるかを知ることができますか?

これは今でも同じではありませんか?
あなたが提供した 2 つのデータについて、あなた以外の誰が誰が誰であるかを知ることができますか?
データベースで結合クエリを使用すると、関係性は照合できますが、数量は指定できません このように書くことは可能でしょうか?
りー

これは今も同じではないですか?
あなたが提供した 2 つのデータについて、あなた以外の誰が誰が誰であるかを知ることができますか?
この方法で対応できますか? Stock_no の値はすでにわかっているので、対応する数量値 (mount*snp の結果) を取得するだけで済みます。その後、対応する数量値の結果を使用して、データベース データ内の対応するロット番号と先入れ法で照合します。 、先出し順。このテーブルに従って照合します:

select c.stock_no,a.packageno,a.lotno from vp_barcode_2d_y as a left joinkw_manage as b on a.packageno = b.packageno left join stock_detail as c on b.cust_no = concat(left(c.cust_no,5),' ',right(c.cust_no,5))where c.stock_no = 'SU13061301011' group by a.barcode order by a.lotno,a.packageno asc 样式如下:== 转存表中的数据 vp_barcode_2d_y |SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219001|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219002|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207|SU13061301011|VP3.0 130219003|3207....//得到的结果是:显示行 0 - 29 (540 总计, 查询花费 0.0072 秒)
ログイン後にコピー

在庫テーブルに出荷フィールドを追加します
入荷の場合、このフィールドは 0 です
出荷の場合、このフィールドは出荷数量になります
入荷数量 - 出荷数量 = バッチの残りの数量

そして
select * from tbl_name

select a.packageno,a.lotno from vp_barcode_2d_y as a left joinkw_manage as b on a.packageno = b.packageno left join stock_detail as c on b.cust_no = concat(left(c.cust_no,5),' ',right(c.cust_no,5))where c.stock_no = 'SU13061301011' group by a.barcode order by a.lotno,a.packageno asc 样式如下:== 转存表中的数据 vp_barcode_2d_y |VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219001|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219002|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207|VP3.0 130219003|3207....//得到的结果是:显示行 0 - 29 (540 总计, 查询花费 0.0072 秒)
ログイン後にコピー

SELECT * , (SELECT sum( num ) FROM tbl_name WHERE id<=a.id ) as c FROM tbl_name a
id  num  1   20    2   20    3   30   
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
とすると、列 c をアウトバウンドソースのベースとして使用できます
If発送梱包のサイズは 30 です
対応する ID は次のとおりです:
梱包 1 1,2
梱包 2 2,3
梱包 3 3、後続の ID

在庫テーブルに発送フィールドが追加されます
このフィールドは、倉庫 0
倉庫から出荷する場合、このフィールドは出荷数量です
入荷数量 - 出荷数量 = バッチの残り数量

そして
select * from tbl_name

id  num  c  1   20   20 2   20   40 3   30   70
ログイン後にコピー
ログイン後にコピー

SELECT * , (SELECT sum( num ) FROM tbl_name WHERE id<=a.id ) as c FROM tbl_name a
id  num  1   20    2   20    3   30   
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
の場合、列 c はアウトバウンドソースのベースとして使用できます
アウトバウンドパッケージングのスケールが 30
の場合、対応する ID は次のとおりです:
Packing 1 1, 2
梱包2 2,3
梱包3 3、その後のid
はそういう意味があるようです。データベースの設計に問題があるようです。
新しく作成されたテーブルは出荷時の梱包仕様を表していますか?では、列 C は何を意味するのでしょうか?

c列は、現在のレコードのnum列のid順の合計を表します
id=1 20
id=2 20+20=40
id=3 20+20+30=70

库存表增加一个出库字段
入库时该字段为0
出库时该字段为已出库数量
入库数量 - 出库数量 = 该批次剩余数量


设 select * from tbl_name

id  num  1   20    2   20    3   30   
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

SELECT * , (SELECT sum( num ) FROM tbl_name WHERE id<=a.id ) as c FROM tbl_name a
id  num  c  1   20   20 2   20   40 3   30   70
ログイン後にコピー
ログイン後にコピー
则 c 列可做为出库来源的依据
如果出库包装的规模为 30
那么对应的id为:
包装1 1,2
包装2 2,3
包装3 3,后续id
我还有一个问题,虽然增加了这个出库数量字段,我怎么判断是哪个packageno出库?

这就需要编程处理了,毕竟在查询时是无法把一条记录拆成两条记录的

这就需要编程处理了,毕竟在查询时是无法把一条记录拆成两条记录的
像这样,入库的packageno对应的lotno批次及数量,导出了结果:

$sql = "select a.packageno,b.cust_no,b.lotno,count(b.lotno) from `kw_manage` as a left join `vp_barcode_2d_y` as b on a.packageno = b.packageno group by b.lotno,a.packageno order by b.lotno,a.packageno asc";$result = mysql_query($sql);while($row = mysql_fetch_array($result,MYSQL_ASSOC)){    var_dump($row);}结果:array(4) {  ["packageno"]=>  string(15) "VP3.0 130219001"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219002"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219003"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219004"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219005"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219006"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219007"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219008"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219009"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219010"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219011"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219012"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219013"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219014"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219015"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219016"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219017"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219018"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219019"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219020"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219021"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219022"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219023"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219024"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219048"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219049"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219050"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219051"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219052"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219053"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219054"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219055"  ["cust_no"]=>  string(11) "23710 JE22A"  ["lotno"]=>  string(4) "3207"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219107"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219108"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219109"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219110"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219111"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219112"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219113"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219114"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219115"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219116"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219117"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}array(4) {  ["packageno"]=>  string(15) "VP3.0 130219118"  ["cust_no"]=>  string(11) "23703 3AW0A"  ["lotno"]=>  string(4) "3218"  ["count(b.lotno)"]=>  string(2) "15"}
ログイン後にコピー

已知stock_no为SU13061301011时的结果为195,195,这样的话怎么处理成为已知出库?
SELECT stock_no, mount*snp as total FROM `stock_detail` where `stock_no` = 'SU13061301011'CREATE TABLE IF NOT EXISTS `stock_detail` (  `ID` int(11) NOT NULL AUTO_INCREMENT,  `stock_no` varchar(20) NOT NULL,  `adress` varchar(10) NOT NULL,  `arr_time` datetime NOT NULL,  `c_type` varchar(20) NOT NULL,  `pu_no` varchar(20) NOT NULL,  `cust_no` varchar(20) NOT NULL,  `mount` int(10) NOT NULL,  `snp` int(10) NOT NULL,  `c1_time` datetime NOT NULL,  `c2_time` datetime NOT NULL,  PRIMARY KEY (`ID`)) ENGINE=InnoDB;---- 转存表中的数据 `stock_detail`--INSERT INTO `stock_detail` (`stock_no`, `snp`) VALUES('SU13061301011', 195),('SU13061301011', 195);
ログイン後にコピー

出库信息缺了cust_no,现在补上:

SELECT stock_no, cust_no,mount*snp as total FROM `stock_detail` where `stock_no` = 'SU13061301011'
ログイン後にコピー

输出结果:
array(3) {  ["stock_no"]=>  string(13) "SU13061301011"  ["cust_no"]=>  string(10) "237033AW0A"  ["total"]=>  string(3) "195"}array(3) {  ["stock_no"]=>  string(13) "SU13061301011"  ["cust_no"]=>  string(10) "237033AW0A"  ["total"]=>  string(3) "195"}
ログイン後にコピー

又在贴只有你自己才能看懂的数据

出库时有一个累加的过程,到达预设值就做断行处理
其实这个过程就是你最初帖子的问题,但你始终都以入库为基准,所以总是做不好
应该以出库为准:从A取n,不够再从B中取m,如此循环直到取够

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

11ベストPHP URLショートナースクリプト(無料およびプレミアム) 11ベストPHP URLショートナースクリプト(無料およびプレミアム) Mar 03, 2025 am 10:49 AM

多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

Instagram APIの紹介 Instagram APIの紹介 Mar 02, 2025 am 09:32 AM

2012年のFacebookによる有名な買収に続いて、Instagramはサードパーティの使用のために2セットのAPIを採用しました。これらはInstagramグラフAPIとInstagram Basic Display APIです。

Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

LaravelのバックエンドでReactアプリを構築する:パート2、React LaravelのバックエンドでReactアプリを構築する:パート2、React Mar 04, 2025 am 09:33 AM

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

2025 PHP状況調査の発表 2025 PHP状況調査の発表 Mar 03, 2025 pm 04:20 PM

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています

See all articles