LEFT JOIN キーワードは、右側のテーブル (table_name2) に一致する行がない場合でも、左側のテーブル (table_name1) からすべての行を返します。
(ビジネス要件: 1 つのテーブルからクエリされたデータは別のテーブルに関連付けられ、ファジー クエリが実装される必要があります)
const sql = `select cei.intentionID,cei.engineerName,cei.nickname,cei.headImgUrl,
ifnull(cmw.headImgUrl,'') InvitationImgUrl,ifnull(cmw.nickname,'') InvitationNickName
from cm_engineer_intentions cei
left join cm_member_wechats cmw on cmw.referralCode=cei.inviteCode
where (:isGrant=-1 または isGrant= : isGrant)
および (:intentionStatus=-1 または意図Status=:intentionStatus)
および (:searchKey='' または concat(engineerMobile,engineerName) like concat('%',:searchKey,'%'))
intentionStatus による順序asc, createTime desc`;
(ビジネス要件: 特定のフィールドが渡されると更新し、渡されない場合は無視するため、状況に応じて挿入するかどうかを選択できます)特定のフィールドが必要です) stConst Contractremarksql = IsupDateRemark? : IntentStatus $ {Contactremarksql} where IntentID =: Intentionid`;
Delete,In の使用法: (IN 演算子を使用すると、WHERE 句で複数の値を指定できます)
Insertの使用法
(orderEngineerID,orderGoodsID,orderID,engineerID,engineerName,createUser 、作成時間) values(:orderEngineerID,:orderGoodsID,:orderID,:engineerID,:engineerName,:createUser,:createTime)
(ビジネス要件: 新しいデータが追加されるたびに、特定のフィールドが増加します元のデータの最大値に基づいて 1)
(engineerCode,loginName,password,engineerName,sex,birthDate,status, createUser,createTime)select ifnull(max(エンジニアコード),0)+1,:loginName,:password,:engineerName,:sex,:birthDate,
:status,:createUser,now()from cm_engineers`;
(ビジネス要件: 他のテーブルからデータを追加現在のテーブルに)
select :orderGoodsID,:orderID,:goodsID ,goodsCode,iconUrl,:createUser,now()from cm_service_goods、goodsID=:goodsID および status=1
関連する推奨事項:
MySQL ステートメントのロックを実装する方法
mysql ステートメントを使用したデータ テーブルの作成に関する詳細なチュートリアル
パフォーマンスmysql ステートメントの分析と最適化以上がmysql ステートメントの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。